C SIGHUP handling and config reloading
authorBill Erickson <berick@esilibrary.com>
Tue, 27 Aug 2013 15:47:52 +0000 (11:47 -0400)
committerJason Stephenson <jstephenson@mvlc.org>
Wed, 4 Sep 2013 15:07:59 +0000 (11:07 -0400)
commit7fed81ab4a24236ef2db4bd0f1d6bd40c65e0b80
tree9cae69436a2556cd5df09c54c42a019f5fd6e872
parent76ceb9d1e4d662c7fa8c41434df940647bf32fef
C SIGHUP handling and config reloading

Sending the HUP signal to a C Listener process now results in the
following:

 * Reload the opensrf_core config
 * update the log file level
 * kill idle child processes
 * child processes that are active when the signal is received are
   tracked and killed once they become idle.
 * New children are spawned per the min child settings

The primary use case for these changes is temporarily changing the log
level for a given service for debug purposes.  It may also
be used, for example, to gracefully recover excess RAM consumed by a
child process.

opensrf.xml (opensrf.settings config) is not reloaded, so min/max child
settings will not be affected.

Signed-off-by: Bill Erickson <berick@esilibrary.com>
Signed-off-by: Jason Stephenson <jstephenson@mvlc.org>
include/opensrf/osrfConfig.h
src/libopensrf/osrfConfig.c
src/libopensrf/osrf_prefork.c