|
From: Leif M. <le...@ta...> - 2006-09-13 13:47:39
|
Neeraja, I did some research on this tonight. Everything in the wrapper looks correct. But the wrapper is barfing when it attempts to call System.exit. This should be a valid operation so this seems like a JVM bug? Does this look like it applies to what you are seeing? http://bugs.sun.com/bugdatabase/view_bug.do;:YfiG?bug_id=6222850 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6251180 From your trace, the Wrapper is calling shutdownJVM from within the main command loop. That is triggered by the ServiceManager attempting to stop the service. For this reason, this method should be getting called before the JVM's shutdown hooks have been started. The call to System.exit within this method should be starting the shutdown hooks it self, but that operation is failing. This happens after the WrapperListener.stop method has been called. However, because you are using the WrapperSimpleApp helper class, that listener does nothing. I'll give this some more thought, but I don't see how the Wrapper could be causing this on its own... What happens if you use the 3.2.1 release? (Shouldn't make any difference) How about different JVM versions? Cheers, Leif Neeraja Kollu wrote: > > Hi, > > > We are using wrapper for 24X7 critical application. > Occationally, we are getting the following exception when trying to > stop the service from Windows Service Manager. > > INFO | jvm 1 | 2006/09/06 07:50:41 | Server daemon died! > INFO | jvm 1 | 2006/09/06 07:50:41 | > java.lang.IllegalThreadStateException > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Thread.start(Native Method) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Shutdown.runHooks(Shutdown.java:158) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Shutdown.sequence(Shutdown.java:197) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Shutdown.exit(Shutdown.java:242) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Runtime.exit(Runtime.java:123) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.System.exit(System.java:789) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > org.tanukisoftware.wrapper.WrapperManager.shutdownJVM(WrapperManager.java:3003) > > INFO | jvm 1 | 2006/09/06 07:50:41 | at > org.tanukisoftware.wrapper.WrapperManager.privilegedStopInner(WrapperManager.java:3144) > > INFO | jvm 1 | 2006/09/06 07:50:41 | at > org.tanukisoftware.wrapper.WrapperManager.handleSocket(WrapperManager.java:3768) > > INFO | jvm 1 | 2006/09/06 07:50:41 | at > org.tanukisoftware.wrapper.WrapperManager.run(WrapperManager.java:4158) > INFO | jvm 1 | 2006/09/06 07:50:41 | at > java.lang.Thread.run(Thread.java:567) > INFO | jvm 1 | 2006/09/06 07:50:41 | Server daemon shut down > > > We create multiple threads from our application. > > Please find the attached log file. > > Thanks in advance. > > > Neeraja |