----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/39348/ -----------------------------------------------------------
Review request for mesos and Ben Mahler. Bugs: MESOS-2079 https://issues.apache.org/jira/browse/MESOS-2079 Repository: mesos Description ------- OS X will raise SIGPIPE against the process rathr than the triggerring thread, causing the SUPPRESS macro to sometimes fail to squash the signal. The right way to avoid this on OS X to block SIGPIPE in the process (which we are loth to do in libprocess), or to request that SIGPIPE not be raised on a particular file descriptor. - Add os::nonSigpipe() helper to check whether SIPIPE is suppressed on a file descriptor. - Add os::nosigpipe() to enable or disable SIGPIPE suppression. - Use os::nosigpipe() to suppress SIGPIPE when we create sockets. - Check and restore the SIGPIPE status in process::io::internal::write(), which makes repeated iterations of the IOTest.Write test reliable. Diffs ----- 3rdparty/libprocess/include/process/network.hpp 61bfa8243728dc19ab0e6fb43d33ca83fb3709c3 3rdparty/libprocess/src/io.cpp 26686e1a96484e3f09d41a7292f38b7579ce9c48 Diff: https://reviews.apache.org/r/39348/diff/ Testing ------- OS X and CentOS 6 make && make check Thanks, James Peach