Improved Launching of SIGNAL_READY and SIGNAL_DOWN ProcessesThe c-treeACE SIGNAL_READY and SIGNAL_DOWN configuration keywords allow c-treeACE to execute external processes after server startup or server shutdown respectively. When a c-treeACE process was configured with large amounts of cache memory, it was found that the SIGNAL_READY and SIGNAL_DOWN processes could silently fail. c-treeACE launches these external processes using a fork() system call to create a new process. As fork() duplicates the entire image of the server process, this can cause paging faults and in the worse case may fail if not enough swap space is available. The Unix vfork() system call does not duplicate the process image, and can be used when an exec() is immediately called in the new process, as is the case with c-treeACE. |
|||