-
-
Notifications
You must be signed in to change notification settings - Fork 12
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
blocked SIGPIPE causes uninterruptible dnsjit scripts #234
Comments
LOL, I just realized it ignores also SIGSEGV. I think that's a bit too much 😂 |
|
jelu
added a commit
to jelu/dnsjit
that referenced
this issue
Mar 6, 2024
- Fix DNS-OARC#234: Remove signal blocking - Format code using newer `clang-format`
Merged
@pspacek @tkrizek please test this :) |
cznic-knotbot
pushed a commit
to CZ-NIC/shotgun
that referenced
this issue
Mar 20, 2024
Newer versions of dnsjit no longer ignore all signals sent to the process. We need to ensure that SIGPIPE caused by a single broken connection won't cause shotgun to end abruptly. Related DNS-OARC/dnsjit#234
Signals are now working as expected. We've just had to ignore |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Normally scripts which use stdout can be terminated by signal SIGPIPE, i.e. when another tool in the pipeline cuts the output etc.
Dnsjit blocks SIGPIPE unconditionally and this causes scripts to run until they terminate for other reasons, even if the all the output is being dropped.
This is causing trouble in long testing pipelines which do decompress & process as separate steps in individual processes.
A minimal example:
File /tmp/out.lua
LuaJIT behavior:
Dnsjit behavior:
I would submit MR to unblock SIGPIPE, but I'm not sure why generic block for (almost) all signals was put in place.
Current behavior stems from this piece of code:
The text was updated successfully, but these errors were encountered: