[SERVER-16636] Deadlock detection should check cycles for stability or should be disabled Created: 22/Dec/14 Updated: 19/Sep/15 Resolved: 04/May/15 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Concurrency, MMAPv1 |
| Affects Version/s: | 3.0.0 |
| Fix Version/s: | 3.0.3, 3.1.3 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Kaloian Manassiev | Assignee: | Kaloian Manassiev |
| Resolution: | Done | Votes: | 0 |
| Labels: | FT | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Backport Completed: | |||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
Our deadlock detector does not check for deadlock stability currently. It is possible that as the graph traversal progresses, locks which we were waiting on earlier get freed and suddenly become waiting on us, becoming counted in the cycle. The fix would be to add check for deadlock stability by re-iterating the discovered cycle. Until this is fixed, we cannot use the deadlock deterministically for assertions, only for retries (which is what we already do). |
| Comments |
| Comment by Githook User [ 04/May/15 ] |
|
Author: {u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}Message: (cherry picked from commit ac6f659b82f022280ab4d92fa715fc0e21828c1f) |
| Comment by Githook User [ 04/May/15 ] |
|
Author: {u'username': u'kaloianm', u'name': u'Kaloian Manassiev', u'email': u'kaloian.manassiev@mongodb.com'}Message: |