docker-library / docker-library/mongo
mongo 8.0.5+ crash-loops with SIGSEGV (exit 139) on arm64 / Raspberry Pi 5; 8.0.4 is fine
Nobody has claimed this yet.
- Dominant language
- Shell
- Stars
- 1.1k
- Forks
- 658
- Avg merge
- 4h 40m
- Merged PRs (30d)
- 1
Description
Summary
On arm64 (Raspberry Pi 5, Cortex-A76 / ARMv8.2-A), mongod from the official image starts, runs for a short time, then dies with SIGSEGV (docker events shows die exitCode=139) and loops forever under a restart policy. No graceful shutdown and no fatal log line is emitted; the next start just reports "Detected unclean shutdown."
Bisecting the published tags gives a clean boundary: 8.0.4 is the last good release; 8.0.5 is the first that crash-loops, and every release after it (8.0.6 → 8.0.26, all 8.2.x, all 8.3.x, latest) is affected.
Reproduction
docker run --rm mongo:8.0.5 # SIGSEGV (exit 139), crash-loops roughly every ~30s
docker run --rm mongo:8.0.4 # runs fine
No app, config, replica set, or volumes required — a bare docker run reproduces it. To watch the crash:
docker events --filter image=mongo:8.0.5 --filter event=die \
--format '{{.Time}} exit={{.Actor.Attributes.exitCode}}'
Bisect (one standalone container per version)
| Version | Result |
|---|---|
| 8.0.0 – 8.0.4 | OK |
| 8.0.5 | first bad — SIGSEGV 139 |
| 8.0.6, 8.0.13, 8.0.26 | crash-loop |
| 8.2.1, 8.2.9 | crash-loop (139) |
| 8.3.4 | crash-loop |
There is no published 8.0.2 or 8.0.7, so 8.0.4 → 8.0.5 is the exact consecutive boundary in the official images.
Environment
- Image: official
library/mongo, tags8.0.5+ (build:allocator: tcmalloc-google,distmod: ubuntu2404,distarch: aarch64) - Host: Raspberry Pi 5, Cortex-A76 (ARMv8.2-A), Ubuntu kernel
7.0.0-1010-raspi, page size 4096 - Docker 29.5.1
Details
- Exit is 139 = SIGSEGV; no backtrace and no shutdown sequence is logged before death.
GLIBC_TUNABLES=glibc.pthread.rseq=0(from #723) is present in the container env and does not prevent it.- Not OOM (
State.OOMKilled=false,memory.events: oom_kill 0). Not the older Pi 4 "Illegal instruction"/SIGILL case (#510, #508, #485) — this CPU is ARMv8.2-A and the signal is SIGSEGV, and 8.0.4 on the same host is stable.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the failure with docker run --rm mongo:8.0.5 and compare it with mongo:8.0.4; use docker events and the reported container state to confirm the SIGSEGV. The payload names no source files or tests, so completion would require identifying the regression and verifying that the affected arm64 images no longer crash-loop.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, mongodb
- Domain
- databases, infrastructure
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100