[omniORB] Assertion failed

Helmut Swaczinna Helmut.Swaczinna@wmd.de
Thu, 29 Jul 1999 16:41:36 +0100


Sai-Lai,

I've disabled the scavengers, but the problem still remains. It is 
always the same: The server process crashes *after* a method invocation,
not during method execution. The client gets back the result. The last trace 
messages of the crashed process are always the same:

#### Communication failure. Connection closed.
tcpSocketMT Worker thread: exits.
tcpSocketStrand::~Strand() close socket no. 25

I'm not sure, but it seems to me, that the crash occurs, when the 
client-thread, who has called the server's method, terminates. The clients
are multi-threaded.

What can I do wrong in my code, to produce such behaviour?

I haven't tried egcs 1.1.2 yet. 

Helmut


At 12:04 28.07.99 +0100, you wrote:
>Helmut,
>
>Your trace is completely normal. Before we look further, I want you to
>disable the scavengers. If your process does not crash, then there may
>still be problems with the scavengers to look into.
>
>On the other hand, it could also be that in your application, you kept
object 
>references that have been released or other pointers to heap allocated
>memory that have already been freed.
>
>Also, it could well be a problem with the compiler's exception handling.
>To get to the bottom of this, please use egcs-1.1.2 (compiled with
>--enable-shared --enable-threads options). This would help us to recreate
>your problem.
>
>
>Sai-Lai
>