Dockerd crash on service rollback after an update on constraints
akiuni opened this issue · comments
Long story short
When calling rollback on a service after a constraint has been set, the docker daemon crashes and is unable to recover.
In logfiles, I can see :
août 17 11:28:37 rs dockerd[24251]: panic: runtime error: invalid memory address or nil pointer dereference
août 17 11:28:37 rs dockerd[24251]: [signal SIGSEGV: segmentation violation code=0x1 addr=0x8 pc=0x56498c4e76f6]
- Expected behaviour:
Dockerd shoud not crash, and the service should have been rollbacked
- Actual behaviour:
Dockerd crashes and the swarm seems to be corrupted.
How to reproduce
I've built a test here to reproduce the problem :
20210817_crash_dockerd.zip
I've also attached full logs in the zip file.
Your environment
OS: Linux Debian 10.9
Docker version :
Client: Docker Engine - Community
Version: 20.10.5
API version: 1.41
Go version: go1.13.15
Git commit: 55c4c88
Built: Tue Mar 2 20:17:50 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.5
API version: 1.41 (minimum version 1.12)
Go version: go1.13.15
Git commit: 363e9a8
Built: Tue Mar 2 20:15:47 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.4.4
GitCommit: 05f951a3781f4f2c1911b05e61c160e9c30eaa8e
runc:
Version: 1.0.0-rc93
GitCommit: 12644e614e25b05da6fd08a38ffa0cfe1903fdec
docker-init:
Version: 0.19.0
GitCommit: de40ad0
I think that may be a docker bug, issue opened here : moby/moby#42783