[omniORB] deadlock with distributed callback application

Lars Immisch lars@ibp.de
Thu, 3 May 2001 01:36:07 +0200


Oh my, following up to myself...

> I am running into a problem that seems to be a omniORB deadlock in a
> distributed callback application.
>
> In essence, I have several servants that call back into a single client. When
> I start two operations, and they complete simultaneously, the first server
> blocks on the invocation of the completion forever. The client interestingly
> also blocks - it seems to get stuck on a _is_a which comes just before the
> completion.

Sorry, this description was inaccurate.

The problem occurs when the client sends multiple requests (to multiple  
servants). The first servants blocks invoking the completion operation on the  
client while the client tries to send the second request.

It's clearer from the code, I hope.

The last invocation I see on a client is a _is_a. This puzzles me, since the  
server knows the type_id of the client (or should know it).

Can you give me a hint where I should start looking?

Thanks - as always,

Lars