The wait call returns -1 when there are no child
processes left. The code does not handle this situation
and the parent ends up in an endless loop which can
only be stopped with a control-C.
It should never happen that there are no child processes
left, teoretically as each process dies (because it reached
the "max_per_slave" limit) a new process is forked to
replace it.
For some time the CVS code had a problem and children died
without being respawned, but I think it is fixed now.
Can you reproduce the problem (e.g. running out of worker
processes) without applying the patch? If so, could you
please post/send the httpush.debug file the program
generates when run with the -d switch. Make sure you
checkout the latest version before reproducing it, please.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=47902
Hi, thanks for your report, greatly appreciated.
It should never happen that there are no child processes
left, teoretically as each process dies (because it reached
the "max_per_slave" limit) a new process is forked to
replace it.
For some time the CVS code had a problem and children died
without being respawned, but I think it is fixed now.
Can you reproduce the problem (e.g. running out of worker
processes) without applying the patch? If so, could you
please post/send the httpush.debug file the program
generates when run with the -d switch. Make sure you
checkout the latest version before reproducing it, please.