Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
mxqd: Restore SIGPIPE to default for job
The mysql client library sets SIGPIPE to SIG_IGN which gets inherited by
the user processes:
This makes a difference for things like
because CMD is not killed by SIGPIPE when
head
is finished. It will getan error "broken pipe" on the next write and may or may not emit this to
stderr.
This bug was partially caused by #63, where we changed our own signal
handling to synchronous mode. While in the previous mode, we unknowingly
fixed the change done by the mysql library, we then just set and
reset the blocking mask, which doesn't restore an ignored signal.
Restore SIGCHLD to SIG_DFL when we initialize the child process for the
user.
With this patch applied, no more signals are blocked for the user
process.
Fixes #71
plus one unrelated commit (typo in message)