[omniORB] SIGCHLD handler causing problem

Jan Lessner jan@c-lab.de
Sun, 11 Apr 1999 16:34:05 +0200


Shashi
> Has anyone faced problem using SIGCHLD handler.
> 
> My servant creates forks lot of processes and It has signal handler for the
> signal SIGCHLD.
> 
> Some times when one of the child processes exit and servant's SIGCHLD handler is
> called the servant exit with message 'Child stopped or terminated'
> 
> I have checked the exit code it is 146.
> 
> But when I removed the SIGCHLD handler there is no problem.
> 
> Can anyone tell me what's causing this problem???
We also had problems with forking child processes from omniORB server
applications. In our case this was related to the open file descriptors
being inherited by the child processes. We had to patch omniORB in a way
that we are always aware of the file descriptors being currently in use
by the omniORB library. When there is a child process created, we
explicitely close these descriptors after successfull fork.

Regards,
Jan Lessner, C-LAB