[SERVER-32875] Don't stall ftdc due to running out of tickets Created: 24/Jan/18 Updated: 30/Oct/23 Resolved: 31/Jan/18 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Concurrency, Diagnostics |
| Affects Version/s: | None |
| Fix Version/s: | 3.4.12 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Bruce Lucas (Inactive) | Assignee: | Bruce Lucas (Inactive) |
| Resolution: | Fixed | Votes: | 2 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Attachments: |
|
||||||||||||||||||||||||
| Issue Links: |
|
||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||||||||||
| Operating System: | ALL | ||||||||||||||||||||||||
| Backport Requested: |
v3.6, v3.4
|
||||||||||||||||||||||||
| Participants: | |||||||||||||||||||||||||
| Case: | (copied to CRM) | ||||||||||||||||||||||||
| Comments |
| Comment by Kelsey Schubert [ 06/Jul/18 ] |
|
A correct fix was applied to the 3.4 branch under |
| Comment by Kelsey Schubert [ 12/Feb/18 ] |
|
Reverted this fix in the 3.4 branch under |
| Comment by Githook User [ 12/Feb/18 ] |
|
Author: {'email': 'kelsey@mongodb.com', 'name': 'Kelsey Schubert', 'username': 'Schubes'}Message: Revert " This reverts commit 04600d70a4e4ac85c5f199c5756e0e5acb2a7d05. |
| Comment by Githook User [ 12/Feb/18 ] |
|
Author: {'email': 'kelsey@mongodb.com', 'name': 'Kelsey Schubert', 'username': 'Schubes'}Message: Revert " This reverts commit da5520555faef9a2ba9b6c9ec80539ae95ad88a5. |
| Comment by Githook User [ 31/Jan/18 ] |
|
Author: {'email': 'bruce.lucas@mongodb.com', 'name': 'Bruce Lucas'}Message: |
| Comment by Githook User [ 31/Jan/18 ] |
|
Author: {'email': 'bruce.lucas@mongodb.com', 'name': 'Bruce Lucas'}Message: |
| Comment by Githook User [ 31/Jan/18 ] |
|
Author: {'email': 'bruce.lucas@mongodb.com', 'name': 'Bruce Lucas'}Message: |
| Comment by Bruce Lucas (Inactive) [ 26/Jan/18 ] |
|
This is simple to reproduce: start a foreground index build, then start >128 threads trying to read from the collection being indexed. This stalls FTDC. Would a possible simple solution be to add a flag to OperationContext that means to opt out of the ticket mechanism for all operations on that context? Attached is a simple POC to do that. As a POC it's only a few lines of code, although with proper engineering it would be a little larger. With this POC FTDC no longer stalls in the above repro. |