geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Bohn <>
Subject Server Shutdown & Reboot issues
Date Tue, 22 Nov 2005 16:45:45 GMT

The console currently has a task to shutdown or reboot the server.

Shutdown isn't a problem ... it just invokes kernel.shutdown() followed 
by a system exit.  (Although the visual results to the user are slightly 
different depending upon the configuration most likely because of 
differences of synchronous/asynchronous variations during shutdown).

However, for reboot it attempts to spawn a new thread and from that 
thread invoke kernel.shutdown() followed by an invocation of Daemon.main 
with no parameters.  And this doesn't work very well at all.

Should we invest the time now to resolve these problems?  I think the 
resolution of these problems could get a bit sticky and would continue 
to be fragile if we don't integrate capabilities directly into the 
kernel for restart.  It also makes me wonder if we should also provide a 
restart from the command line if we support it in the console.

The failures from the reboot vary according to the configuration.  I've 
only tried this with the default configuration, jetty only, and tomcat 
only ... but this is the results:

Jetty only
  - Gets an error while starting G-Bean 
"geronimo:type=NetworkService,name=EJB" and indicates it is in the 
failed state.  This was Caused by: Address 
already in use: JVM_Bind.  In the error log it looks like the port was 
4201.  However, the things (at least for the console) appear to work 
normally after the restart.

Tomcat only
  - Doesn't get any errors, but results in the JVM terminating without 
an attempt at restart.  I haven't tracked down yet who is doing the 
system exit but there isn't much in the log to indicate a failure.

Both Jetty & Tomcat (Jetty on 8080, Tomcat on 8090)
- Gets a whole bunch of error on restart - starting with the same error 
as Jetty only above plus numerous errors from Tomcat in BaseModelMBean, 
Registry, Connector, JkMain.  However, once again the console appears to 
function appropriately (of course it is running on Jetty).


Joe Bohn

"He is no fool who gives what he cannot keep, to gain what he cannot 
lose."   -- Jim Elliot

View raw message