Skip to content
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

READY notification sometimes not accepted by systemd #3293

Closed
indyjo opened this issue Nov 23, 2021 · 1 comment · Fixed by #3291
Closed

READY notification sometimes not accepted by systemd #3293

indyjo opened this issue Nov 23, 2021 · 1 comment · Fixed by #3291

Comments

@indyjo
Copy link

indyjo commented Nov 23, 2021

Sometimes systemd doesn't accept READY notifications generated by runc, causing starting containers to remain in activating state and be killed after timeout.

This applies to configurations in which an OCI container is started as a systemd service with Type=notify.

In those cases, systemd produces a log message like Cannot find unit for notify message of PID 1234, ignoring.

The reason seems to be that runc terminates immediately after sending the READY=1 signal. systemd needs to find out the cgroup of the message sender which only works if that process is still around.

This is a well-known issue: systemd/systemd#2739
In systemd-notify it was fixed by introducing the sd_notify_barrier mechanism.

@indyjo
Copy link
Author

indyjo commented Nov 23, 2021

My PR #3291 implements a fix for this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant