[SERVER-23902] Failing to create a thread should fail with a useful error message Created: 25/Apr/16 Updated: 08/Jan/24 Resolved: 20/Jul/16 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Internal Code |
| Affects Version/s: | None |
| Fix Version/s: | 3.2.9, 3.3.8 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Jonathan Reams | Assignee: | Mira Carey |
| Resolution: | Done | Votes: | 0 |
| Labels: | code-only | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||||||||||
| Backwards Compatibility: | Fully Compatible | ||||||||||||||||
| Operating System: | ALL | ||||||||||||||||
| Backport Completed: | |||||||||||||||||
| Sprint: | Platforms 15 (06/03/16), Platforms 18 (08/05/16) | ||||||||||||||||
| Participants: | |||||||||||||||||
| Description |
|
Wherever we create a stdx::thread, we should catch any exceptions and print them with some useful information. Right now they just don't get caught (except in the listener), and can cause confusing crashes with just a backtrace and no error message (see |
| Comments |
| Comment by Githook User [ 19/Jul/16 ] |
|
Author: {u'username': u'hanumantmk', u'name': u'Jason Carey', u'email': u'jcarey@argv.me'}Message: Instead of aliasing std::thread for stdx::thread, we wrap std::thread in an api compatible version Given that we don't have a good strategy for re-trying thread creation failures, this improves our (cherry picked from commit 0b5cbbadf49da830f20fba6e779b7278f211e394) |
| Comment by Githook User [ 13/Jul/16 ] |
|
Author: {u'username': u'hanumantmk', u'name': u'Jason Carey', u'email': u'jcarey@argv.me'}Message: Revert " This reverts commit 2c330bf540cc4cc4924c0f048cd5f8b21406653c. |
| Comment by Githook User [ 13/Jul/16 ] |
|
Author: {u'username': u'hanumantmk', u'name': u'Jason Carey', u'email': u'jcarey@argv.me'}Message: Instead of aliasing std::thread for stdx::thread, we wrap std::thread in (cherry picked from commit 0b5cbbadf49da830f20fba6e779b7278f211e394) |
| Comment by Mira Carey [ 03/Jun/16 ] |
|
This improves diagnostics for systems reaching thread exhaustion and the impetus was to improve debuggability for support. I think we should consider it for a backport. |
| Comment by Githook User [ 03/Jun/16 ] |
|
Author: {u'username': u'hanumantmk', u'name': u'Jason Carey', u'email': u'jcarey@argv.me'}Message: Instead of aliasing std::thread for stdx::thread, we wrap std::thread in |