Duncan Grisby
2007-04-12 20:43:24 UTC
Attached is the zip file containing the trace log for both server and
client in a zip file.
These lines from the server log show the problem:client in a zip file.
omniORB: Server accepted connection from giop:tcp:10.91.194.106:3754
omniORB: Connection from giop:tcp:10.91.194.106:3754 is not
selectable. Closing it.
The server has so many open connections that the file descriptor used
for the new connection is too large to be used in an fd_set. omniORB is
therefore unable to use select() to watch for incoming calls. Since it
is in thread pool mode, it can't service the connection so it has to
close it.
Depending on your platform, you may be able to increase the size of the
fd_set and then recompile omniORB with the new size.
If your platform properly supports poll(), you can use omniORB 4.1.0,
which uses poll() instead of select() to avoid these limits.
A final option is that you may be able to use thread per connection mode
instead of thread pool mode. That way, you don't need to be able to
select() on the connection since there is a dedicated thread reading
from it.
Cheers,
Duncan.
--
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --
-- Duncan Grisby --
-- ***@grisby.org --
-- http://www.grisby.org --