[omniORB] Re: Connection Handler

Bill Janssen janssen@parc.xerox.com
Wed, 6 Jan 1999 19:16:05 PST


Excerpts from ext.omniorb: 6-Jan-99 [omniORB] Re: Connection Ha..
Sai-Lai Lo@orl.co.uk (3640)

> Unlike other ORBs, there is no way to insert a handler into omniORB2 to get
> a callback when a connection is made or when it is broken. It is my opinion
> that using the status of network connections to detect client failure is
> a poor way of doing the job and does not fit in very well with the CORBA
> framework. It is the job of the ORB to decide when is the best time to
> establish a connection and how many connections are necessary to communicate
> with the server. The ORB should also have the freedom to shutdown idle
> connections when it is appropriate. This is in conflict with the idea of
> allowing the application to deduce the status of the remote end purely from
> the status of the related network connections.

Exactly right.  We do the same in ILU.

> For example, a session can be
> represented as a CORBA object provided by the client. The server holds an
> object reference to this session object. Periodically, a thread in the
> server checks if the session object can still be contacted. If
> communication with the session object fails, the server thread does the
> garbage collection. Of course there should also be a fast way for the
> client to close a session orderly. The refresh mechanism used by the server
> is only meant to be a last resort to detect client failures.

This mechanism is built into ILU as part of our distributed garbage
collection system.

Bill