[omniORB] Omni on PlayStation2

Duncan Grisby duncan@grisby.org
Fri Apr 11 15:24:01 2003


On Tuesday 1 April, "Ulf Stoermer" wrote:

> I ran omniNames on the Linux-PC and attached to the running
> threads with gdb while omniNames was "blocked". Here are
> the backtraces of the 5 threads:

[...]
> Thread 5
> #0  0x420e8182 in recv () from /lib/i686/libc.so.6
> #1  0x401d2d54 in recv () from /lib/i686/libpthread.so.0
> #2  0x40156206 in omni::tcpConnection::Recv () from

This looks like it's expecting more data from the client. I don't know
why it would think that, though, since the GIOP trace you sent before
showed a complete valid request. I don't know what to suggest really.

> I did a small test though, and indeed the exception handling
> on the Playstation is not thread safe. From the main function
> I start two threads which after some time will throw exceptions
> and then shall be handled by the individual threads. Even though
> the program doesn't crash, but the exceptions are never caught,
> not even from the main thread.

That's different. The problem is usually that one thread throws an
exception and a different one catches it, causing it to blow up. I've
not seen exceptions disappearing like that before. Regardless, if
exceptions don't work, omniORB definitely won't.

Cheers,

Duncan.

-- 
 -- Duncan Grisby         --
  -- duncan@grisby.org     --
   -- http://www.grisby.org --