Nick Andrew created MESOS-2026:
----------------------------------
Summary: SIGPIPE on logging fd causes endless loop
Key: MESOS-2026
URL: https://issues.apache.org/jira/browse/MESOS-2026
Project: Mesos
Issue Type: Bug
Components: slave
Affects Versions: 0.20.1
Reporter: Nick Andrew
Priority: Minor
If the slave writes to STDERR and the other end has closed the pipe, the slave
will receive SIGPIPE, and it logs that by writing a line to STDERR, which
causes SIGPIPE, and so on forever.
strace output:
```
write(2, "W1103 03:53:43.602411 17597 glog.hpp:52] RAW: Received signal
SIGPIPE; escalating to SIGABRT\n", 93) = -1 EPIPE (Broken pipe)
tgkill(22346, 17597, SIGABRT) = -1 ESRCH (No such process)
rt_sigreturn() = -1 EPIPE (Broken pipe)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=17597, si_uid=0} ---
gettid() = 17597
write(2, "W1103 03:53:43.602411 17597 glog.hpp:52] RAW: Received signal
SIGPIPE; escalating to SIGABRT\n", 93) = -1 EPIPE (Broken pipe)
tgkill(22346, 17597, SIGABRT) = -1 ESRCH (No such process)
rt_sigreturn() = -1 EPIPE (Broken pipe)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=17597, si_uid=0} ---
gettid() = 17597
write(2, "W1103 03:53:43.602411 17597 glog.hpp:52] RAW: Received signal
SIGPIPE; escalating to SIGABRT\n", 93) = -1 EPIPE (Broken pipe)
tgkill(22346, 17597, SIGABRT) = -1 ESRCH (No such process)
rt_sigreturn() = -1 EPIPE (Broken pipe)
--- SIGPIPE {si_signo=SIGPIPE, si_code=SI_USER, si_pid=17597, si_uid=0} ---
gettid() = 17597
```
I have no idea how the pipe was closed in the first place, but a looping slave
is not good.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)