-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
None
-
Service Arch
-
Fully Compatible
-
ALL
-
Service Arch Prioritized List
In https://github.com/mongodb/mongo/blob/8e4b5670df9b9fe814e57cb5f3f8ee9407237b5a/src/mongo/util/signal_handlers_synchronous.cpp , the server defines signal-handlers for a variety of signals that can be synchronously generated, like SIGSEGV and SIGABRT. The signal-handling action for these signals is defined to be some version of logging a fatal error, collecting and logging a backtrace, and the exiting. When a thread receives a second such signal (e.g., it's handling an abort and the signal handler segfaults), the second signal handler calls quickExit, which may call into logging (risky when we're two signal handlers deep) and doesn't call into the default signal handler. This means we won't get a core dump in this case. We should call `endProcessWithSignal`.
- is related to
-
SERVER-82658 Log system will attempt to allocate inside of signal handler
- Open
- related to
-
SERVER-83271 Make synchronous signal handlers signal-safe
- Open
-
SERVER-66562 Audit, document all functions accessed by sync signal handlers
- Backlog