Parallel deletion triggers DB deadlocks
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cinder |
Incomplete
|
Medium
|
Tushar Trambak Gite |
Bug Description
When doing parallel deletions, i.e. "delete vol1 vol2 ... volN", rather than "delete vol1; delete vol2; ... ; delete volN", our c-vol server reports database deadlocks:
"Deadlock detected when running 'reservation_
"Deadlock detected when running 'quota_reserve': Retrying..."
I can reproduce this with N=10, on Mitaka and Newton, on two different Cinder setups (different DBs, different Ceph backends).
This is the query that seems to get stuck:
SELECT quota_usages.
FROM quota_usages
WHERE quota_usages.
In my test setup with N=10, this seems to recover after a while (the first 2-5 deletions go fast, then the "deadlock" occurs, things are stuck for a couple of minutes, then the rest of the deletions is done). With N sufficiently large, however, this seriously impacts our production service.
I didn't try parallel creations, but from https:/
Changed in cinder: | |
importance: | Undecided → Medium |
status: | New → Triaged |
Changed in cinder: | |
assignee: | nobody → Tushar Trambak Gite (tushargite96) |
I've upgraded one of the Cinder instances to Otaca now, the issue persists (not excluded that this is due to my config, DB setup, or Ceph backend setup, of course).