[omniORB] omniNames crash with multiple connections

Duncan Grisby dgrisby@uk.research.att.com
Wed, 14 Nov 2001 11:50:27 +0000


On Tuesday 13 November, Carsten Kraus wrote:

> Client and server seem to be working all right. I do have a little perl
> script that repeatedly forks, and does a system call for executing the
> client. Trouble starts after having forked off around 28 clients. Client 29
> seems to crash omniNames (see below for a traceLevel 15 + trace invocations
> output of omniNames). 

[...]
> omniORB: Dispatching local call 'resolve' to root/<0>
> libthread panic: cannot create new lwp : dumping core (PID: 26728 LWP 2)
> stacktrace:

Unfortunately, this shows that your operating system was unable to
create a thread, so it panicked and dumped core. If it had just
cleanly refused to create a thread, omniORB would have denied the new
connection and carried on OK. See if you can configure your OS not to
panic when it can't create a thread. If you can't do that, then I'm
afraid there's no solution for omniORB 3.

The other solution is to use the omniORB 4 development snapshot. That
has a thread pooling mode, so you can limit the number of threads it
creates. That way, you can avoid creating so many threads that the OS
feels the need to kill you.

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --