[omniORB] select()-timeout in tcpSocketRendezvouser

Dr.-Ing.MartinGoettlicher Dr.-Ing.MartinGoettlicher
Thu, 12 Apr 2001 13:09:24 +0200


Hello,

a few days ago we switched from a commercial ORB to omniORB 3.0.3 and we are 
very happy with it. So far we detected only one problem which we hope can be 
fixed easily.
Among our programs using CORBA we have one small utility program which is 
called from shell-scripts very often. This program simply makes one 
CORBA-method call and terminates. Because the shell-scripts were much slower 
than with the commercial ORB, I investigated this problem further. I found 
out that the time (one second) is consumed during orb->destroy() which waits 
for the running threads to join. In the run_undetached()-method of the class 
tcpSocketRendezvouser (omni/src/lib/omniORB2/orbcore/ tcpSocketMTfactory.cc 
line 1546-1548) there is a call to select() with a timeout of one second. I 
patched this class using a much shorter timeout and my problem seems to be 
solved. Because I don't like to patch every new version of omniORB I would be 
very happy if this timeout could be configured for example via a command line 
argument.

Thank you very much for your effort.

Martin Goettlicher