Lock up while shutting down RAP application in Wildfly 8.1/JBoss [message #1429446] |
Tue, 23 September 2014 04:39  |
Eclipse User |
|
|
|
Hello,
we are getting a lock up while shutting down Wildfly 8.1/JBoss or disabling our RAP application.
The application itself runs in SWT_COMPATIBILITY.
The lock up happens when our login dialog is (or was) open at a client. It's a simple JFace-Dialog.
The login dialog opens within the @PostContextCreate and returns whether or not the application should start. (as described in Toms "Article e4 on RAP Update for Luna M7" )
Let's say, one client opened this login dialog. While the login dialog is shown we try to undeploy the RAP application (war file). This is the moment when the RAP application freezes (no further sessions opened) and our server waits forever to proceed shutting down. This also happens when the login dialog was open and the browser windows was closed - without filling out the login dialog.
I did a wildfly jstack during freeze, maybe this is helpful.
Best regards
Thorsten Müller
2014-09-23 09:30:42
Full thread dump Java HotSpot(TM) 64-Bit Server VM (25.5-b02 mixed mode):
"Framework stop" #177 prio=5 os_prio=0 tid=0x000000005d876800 nid=0x1828 in Object.wait() [0x000000006037d000]
java.lang.Thread.State: WAITING (on object monitor)
at java.lang.Object.wait(Native Method)
at java.lang.Thread.join(Thread.java:1245)
- locked <0x00000000fb9468f8> (a org.eclipse.rap.rwt.internal.lifecycle.UIThread)
at java.lang.Thread.join(Thread.java:1319)
at org.eclipse.rap.rwt.internal.lifecycle.UIThread.terminateThread(UIThread.java:122)
at org.eclipse.rap.rwt.internal.lifecycle.UIThread.interceptShutdown(UIThread.java:152)
at org.eclipse.rap.rwt.internal.service.UISessionImpl.valueUnbound(UISessionImpl.java:277)
at io.undertow.servlet.core.SessionListenerBridge.attributeRemoved(SessionListenerBridge.java:104)
at io.undertow.server.session.SessionListeners.attributeRemoved(SessionListeners.java:59)
at io.undertow.server.session.InMemorySessionManager$SessionImpl.removeAttribute(InMemorySessionManager.java:358)
at io.undertow.servlet.spec.HttpSessionImpl.removeAttribute(HttpSessionImpl.java:182)
at org.eclipse.equinox.http.servlet.internal.HttpSessionAdaptor.removeAttribute(HttpSessionAdaptor.java:87)
at org.eclipse.rap.rwt.internal.service.UISessionImpl.shutdown(UISessionImpl.java:133)
at org.eclipse.rap.rwt.internal.service.UISessionImpl.beforeDestroy(UISessionImpl.java:127)
at org.eclipse.rap.rwt.internal.application.ApplicationContextImpl.fireBeforeDestroy(ApplicationContextImpl.java:415)
at org.eclipse.rap.rwt.internal.application.ApplicationContextImpl.deactivate(ApplicationContextImpl.java:225)
at org.eclipse.rap.rwt.application.ApplicationRunner.stop(ApplicationRunner.java:95)
at org.eclipse.rap.rwt.osgi.internal.ApplicationReferenceImpl.stopRWTApplication(ApplicationReferenceImpl.java:124)
at org.eclipse.rap.rwt.osgi.internal.ApplicationReferenceImpl.doStopApplication(ApplicationReferenceImpl.java:111)
at org.eclipse.rap.rwt.osgi.internal.ApplicationReferenceImpl.stopApplication(ApplicationReferenceImpl.java:95)
at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.stopApplicationReference(ApplicationLauncherImpl.java:195)
at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.stopApplicationReferences(ApplicationLauncherImpl.java:180)
at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.removeConfiguration(ApplicationLauncherImpl.java:74)
- locked <0x00000000fba0dcf0> (a java.lang.Object)
at org.eclipse.rap.rwt.osgi.internal.ApplicationConfigurationTracker.removedService(ApplicationConfigurationTracker.java:42)
at org.eclipse.rap.rwt.osgi.internal.ApplicationConfigurationTracker.removedService(ApplicationConfigurationTracker.java:1)
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:967)
at org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1)
at org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:909)
at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:109)
at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:914)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:862)
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:801)
at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:222)
at org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:356)
at org.eclipse.equinox.internal.ds.InstanceProcess.disposeInstances(InstanceProcess.java:306)
at org.eclipse.equinox.internal.ds.Resolver.disposeComponentConfigs(Resolver.java:724)
at org.eclipse.equinox.internal.ds.Resolver.disableComponents(Resolver.java:700)
at org.eclipse.equinox.internal.ds.SCRManager.stoppingBundle(SCRManager.java:554)
at org.eclipse.equinox.internal.ds.SCRManager.bundleChanged(SCRManager.java:233)
at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:902)
at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:165)
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:75)
at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:67)
at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:102)
at org.eclipse.osgi.container.Module.publishEvent(Module.java:466)
at org.eclipse.osgi.container.Module.doStop(Module.java:624)
at org.eclipse.osgi.container.Module.stop(Module.java:488)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.decStartLevel(ModuleContainer.java:1623)
at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1542)
- locked <0x00000000e16ca6a0> (a java.lang.Object)
at org.eclipse.osgi.container.SystemModule.stopWorker(SystemModule.java:248)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule.stopWorker(EquinoxBundle.java:145)
at org.eclipse.osgi.container.Module.doStop(Module.java:626)
at org.eclipse.osgi.container.Module.stop(Module.java:488)
at org.eclipse.osgi.container.SystemModule.stop(SystemModule.java:186)
at org.eclipse.osgi.internal.framework.EquinoxBundle$SystemBundle$EquinoxSystemModule$1.run(EquinoxBundle.java:160)
at java.lang.Thread.run(Thread.java:745)
"default task-27" #176 prio=5 os_prio=0 tid=0x000000005d875000 nid=0x19c8 waiting on condition [0x00000000601df000]
java.lang.Thread.State: WAITING (parking)
...
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03871 seconds