-
Notifications
You must be signed in to change notification settings - Fork 4.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
The createdump tool creates double crash dumps when running in a Linux container on Kubernetes #78956
Comments
Tagging subscribers to this area: @tommcdon Issue DetailsDescriptionA bug in the createdump tool which causes double crash dumps to be created for a single crash when running in a Linux container in Kubernetes. Reproduction Stepshttps://github.com/kristjanjogi-msft/createdump-doubledump-bug Reproduction prerequites
Reproduction steps:
Expected behaviorOne crash dump is created for a single crash. Actual behaviorTwo crash dumps are created for a single crash. Regression?No response Known WorkaroundsNo response Configuration
Other informationNo response
|
Related to #69380 |
@hoyosjs discovered that the first dump is caused by SIGABORT and the second is caused by SIGSEGV |
@kristjanjogi-msft would it be possible to attach/send me the two dumps generated (i.e. /tmp/crashdump.1.1669709005 & /tmp/crashdump.1.1669709006). The second one might help quickly track down where SIGSEGV is coming from which might be in runtime shutdown somewhere. Thanks. |
@mikem8361 Sent response via email. |
Issue: dotnet#78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.
Issue: #78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.
Fixed with PR #80474. |
Issue: #78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.
Issue: #78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT. Co-authored-by: Mike McLaughlin <mikem@microsoft.com>
Issue: dotnet#78956 After a core dump is generated because of a unhandled managed exception abort() is called but a SIGSEGV is generated in libpthread.so which is caught by the runtime and a second core dump is generated. The fix is to uninstall/uninitialize all the signal handlers, not just SIGABORT.
Description
A bug in the createdump tool which causes double crash dumps to be created for a single crash when running in a Linux container in Kubernetes.
Reproduction Steps
https://github.com/kristjanjogi-msft/createdump-doubledump-bug
Prerequites
Steps:
Clone the repository:
git clone https://github.com/kristjanjogi-msft/createdump-doubledump-bug.git
cd createdump-doubledump-bug
Build and publish the crashing application:
dotnet publish -c Release -o published CrashingApplication/CrashingApplication.csproj
Build the Docker image:
docker build -t crashingapplication:1.0 .
Run a Kubernetes pod in which the createdump tool creates two crash dumps for a single crash:
kubectl apply -f doubledump.yaml
View the evidence, two crash dumps instead of one are created:
kubectl logs doubledump
Expected behavior
One crash dump is created for a single crash.
Actual behavior
Two crash dumps are created for a single crash.
Regression?
No response
Known Workarounds
No response
Configuration
Other information
No response
The text was updated successfully, but these errors were encountered: