diff options
author | Eric Wong <e@80x24.org> | 2019-07-03 23:34:31 +0000 |
---|---|---|
committer | Eric Wong <e@80x24.org> | 2019-07-03 23:34:31 +0000 |
commit | 5e3d05997769dd270123b9c2479938704de078de (patch) | |
tree | 8692b46b89a0e1481703c6a1c6b0c8b5b8182f57 /GIT-VERSION-GEN | |
parent | 2ea6af4ed1ce5f3a34bdfd32b9e54a67fabcff26 (diff) | |
download | unicorn-5e3d05997769dd270123b9c2479938704de078de.tar.gz |
It's racy otherwise when starting simultaneous instanced units. Without specifying NonBlocking=true, systemd will clear the O_NONBLOCK flag every time it starts a new service instance. There's a small window where systemd can clear O_NONBLOCK immediately after it's set by Ruby (or kgio): unicorn@1 |systemd |unicorn@2 ---------------------------+----------------+-------------------- F_SETFL, O_NONBLOCK|O_RDWR | | (not running, yet) |F_SETFL, O_RDWR | |fork | | exec unicorn@2 | accept4(...) # blocks! | | (now started by systemd) | |F_SETFL,O_NONBLOCK|O_RDWR | |accept4(...) non-blocking
Diffstat (limited to 'GIT-VERSION-GEN')
0 files changed, 0 insertions, 0 deletions