[omniORB] Nested call blocked

Sai-Lai Lo S.Lo@uk.research.att.com
24 Jan 2001 12:51:25 +0000


Your scenerio is different. As a client, omniORB do not let more that one
call outstanding per connection. If it needs to dispatch 2 calls to the
same address space, it opens 2 connection if necessary.

In the previous mail, the client is not omniORB, hence the difference.

Sai-Lai


>>>>> Rob van der Leek writes:

> My problem is kind of similar to the one Peter reported. I have already
> posted a msg to the list about it. In short this is my situation:

> 1. Client1 -- push(event) --> EventChannel --- push(event) --> Server

> 2. Server incarnates an object factory, the server's push handler
> creates a new object and calls some methods on that object. The method
> invocations take some time to complete.

> 3. Client2 -- push(event) --> EventChannel --- push(event) --> Server

> 4. Now Client2 has to wait for the push handler to return (since the ORB
> controlled thread policy in OmniORB is implemented as thread-per-object,
> and there's only one server object).

> Duncan Grisby corrected my assumptions in step 4 and told me OmniORB's
> thread policy is thread per connection. Duncan also told me that the
> EventChannel should open a new connection, so the server will use a
> different thread. This thread model is exactly what I'm looking for
> since I try to avoid threading as much as possible in my own apps...

> _but_, my push server still blocks on the method invocation after
> receiving a push event, other push events are queued untill the server
> returns from the push handler. What am I missing here? Could it be
> possible that all push events for a server are send from the
> EventChannel using the same tcp connection (wild guess)?

> Please let me know if you need a small test implementation to see how I
> did things.

> I'm using OmniORB 3.02 + OmniNotify 1.1b1 on a RH 6 Linux system.



-- 
Sai-Lai Lo                                   S.Lo@uk.research.att.com
AT&T Laboratories Cambridge           WWW:   http://www.uk.research.att.com 
24a Trumpington Street                Tel:   +44 1223 343000
Cambridge CB2 1QA                     Fax:   +44 1223 313542
ENGLAND