[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