[omniORB] Shutting down idle server

Rakshit Simha rsimha@orchestream.com
Tue, 13 Nov 2001 11:20:08 -0500


Hello,

I'm using omniORB 2.8.0 on Solaris 8 runtime (Solaris 2.6 compile time) on
sparc platform.  Unfortunately, I'm stuck with this version of omniORB and
can move to omniORB4 only sometime mid next year.

My application was ported from Orbix to omniORB.  One of the legacy
behaviours I have to maintain is:
  The server process must die if there is no incoming call for a
  configurable period of time.

For example, if no CORBA invocations are made on the server for 1 hour,
the server shuts down.

Is there a way I can do this with omniORB 2.8.0?  I would like a
mechanism where I can register a callback function, to be called during
each incoming CORBA invocation.  In this function, I could reset a
countdown timer running in a "watch" thread.  Or, if there is more ORB
support, I can do something more elegant?

Another question: What happens to ongoing calls when I call 
BOA::impl_shutdown()?  Do they get to complete, or are they interrupted
with the client getting a COMM_FAILURE exception?

Thanks,
Rak.

---
Rakshit Simha                       Phone: (613) 599-2300 x8958
Senior Software Designer            Fax  : (613) 599-2330
Orchestream Americas Corp.          Email: rsimha@orchestream.com
Kanata, Canada                      http://www.orchestream.com/