about summary refs log tree commit homepage
path: root/Documentation
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2013-11-07 05:13:59 +0000
committerEric Wong <e@80x24.org>2013-11-07 05:13:59 +0000
commita79a6d8775171ad5cceda9bb3a77946ba60e26ce (patch)
tree8a850fd32b3c644c01a34803fc4379aa2fcb1199 /Documentation
parent9ec392b437900842a799894194f6b4c2155e604e (diff)
downloadyahns-a79a6d8775171ad5cceda9bb3a77946ba60e26ce.tar.gz
If worker_processes are not enabled, our SIGCHLD handler may
conflict with one installed by the application.  Fortunately it is
uncommon in Ruby web apps to rely on SIGCHLD, but it happens and
that is bad.
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/yahns_config.txt6
1 files changed, 6 insertions, 0 deletions
diff --git a/Documentation/yahns_config.txt b/Documentation/yahns_config.txt
index 2505907..45bcfd9 100644
--- a/Documentation/yahns_config.txt
+++ b/Documentation/yahns_config.txt
@@ -495,6 +495,12 @@ Ruby it is running under.
     pthread_atfork(3)-style hooks.  See WORKER_PROCESSES-LEVEL DIRECTIVES
     for details.
 
+    Using worker_processes is strongly recommended if your application
+    relies on using a SIGCHLD handler for reaping forked processes.
+    Without worker_processes, yahns must reserve SIGCHLD for rolling
+    back SIGUSR2 upgrades, leading to conflicts if the appplication
+    expects to handle SIGCHLD.
+
     Default: nil (single process, no master/worker separation)
 
 ## WORKER_PROCESSES-LEVEL DIRECTIVES