1. In the parent router process: wait for all of the immediate
authorscottmk <scottmk@9efc2488-bf62-4759-914b-345cdb29e865>
Sun, 20 Dec 2009 06:37:02 +0000 (06:37 +0000)
committerscottmk <scottmk@9efc2488-bf62-4759-914b-345cdb29e865>
Sun, 20 Dec 2009 06:37:02 +0000 (06:37 +0000)
commite3414a2937c369a160abf178e91f91e4866c5140
treed5455e9a9374c1ad0d35493785304cbb915d7947
parente6a7336dd29eafcccd5f779231216a43f01aa39d
1. In the parent router process: wait for all of the immediate
child processes to terminate before exiting.

This change eliminates the need for the shell script invoking
the router to sleep before running a ps to identify the effective
router processes (which are grandchildren of the parent). By the
time the parent exits, the children will have launched the
grandchildren and exited.

2. If any of the immediate child processes terminates abnormally
(either a non-zero return code or termination by a signal), issue
a warning message to that effect. This message goes to standard
error, since the parent process never opens a log file.

3. Apply the volatile qualifier to a couple of variables that
are updated asynchronously by a signal handler.

M    src/router/osrf_router.c
M    src/router/osrf_router_main.c

git-svn-id: svn://svn.open-ils.org/OpenSRF/trunk@1878 9efc2488-bf62-4759-914b-345cdb29e865
src/router/osrf_router.c
src/router/osrf_router_main.c