-
Notifications
You must be signed in to change notification settings - Fork 217
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
cont-finish.d regression in v2.2.0.0+ using trap #363
Comments
Known issue, should be fixed in s6-overlay v3, which is in testing right now and should come out in a couple weeks or something, 😉 |
@skarnet thanks for the fast reply. looking forward to the release - let me know if you have it in a testable form to validate the fix. |
Not right now unless you're willing to build the overlays yourself: it's in the v3 branch of the repository and you have some build instructions here (read the other text files in that directory as well). Your Dockerfile will be slightly different: you'll need to ADD two tarballs, not one, and extract them instead of running an installer. If you have |
@skarnet I've assembled the v3 branch (wow is it different). I'm not entirely sure what's happening during shutdown now...there's no logging whatsoever on my test case. Expanding here:
|
Sorry, I have a fever and am unable to think straight. I'll answer this as soon as I can. |
@bryanlatten Works for me. Your Dockerfile doesn't declare a I am getting:
The |
@skarnet if i build + run this provided dockerfile, here's what I get with ^C
and if I run
|
your shutdown sequence does fully match my expectations, and what was seen in the pre-regression version |
My bad, I had not pushed the latest fixes. Done; please try rebuilding now, s6-overlay should pull the latest s6-linux-init. |
I do see updates in v3 branch, but it hasn't yet change my outcome. Did you try building out my example dockerfile directly? Still seeing
|
That's exactly what I did, and it's working for me. There's something else at play. |
s6-ps:
ls -la
|
It's all looking good and I can't see a difference with what I did. If it's still not working, please add |
@skarnet hope you're feeling better! No change with the commit SHA (performed by doing a clone then
Running without
Running with
|
Strace outputs with an without terminal (spoiler alert - they are the same): |
That's very interesting. 😁 |
@skarnet thanks! just making sure you also have the non-functional |
That was actually a very complex issue, that sent me down a deep, deep rabbit hole. I eventually got to the bottom of it though, and I think it's fixed now. Please rebuild with the latest commit of s6-overlay, and tell me if it works for you. The |
@skarnet just rebuilt:
|
That's expected, and unfortunately, I can't do anything about it. The thing is, if you have a CMD, then Yes, it's complicated. 😄 Fortunately, I don't think it matters, because if you're running a container without a CMD, then there is no reason at all to use an interactive terminal - there is no benefit in running |
v3.0.0.0 is out! The pre-built tarballs aren't yet accessible because @jprjr still needs to set up the CI thing, but the source is available in master. |
@skarnet congrats on the release! I suppose the root issue is solved, but the secondary effect of an unhandled |
|
During container shutdown, for a service
run
script where the program has anytrap
, it now seems to block anycont-finish.d
ands6-finish
processes from executing. Removing the trap and/or downgrading s6-overlay restores the correct shutdown behavior.Scenario
s6-pause
docker stop
.run
script's trap output, output stops.Expected (seen with <= v2.1.0.2)
Actual (seen with v2.2.0.0+)
Dockerfile
The text was updated successfully, but these errors were encountered: