users@glassfish.java.net

Re: asadmin deploy hangs completely

From: <glassfish_at_javadesktop.org>
Date: Wed, 15 Oct 2008 06:24:35 PDT

Ok, i tried narrowing it down using VisualVM and the following blocked thread seem to be part of the problem. The first seems to be the hanging undeploy and the second seems to be something icefaces related:

[code]"Thread-907" - Thread t_at_1135
   java.lang.Thread.State: WAITING on java.lang.Thread_at_57e8dfb3
        at java.lang.Object.wait(Native Method)
        at java.lang.Thread.join(Thread.java:1143)
        at java.lang.Thread.join(Thread.java:1196)
        at org.apache.catalina.core.ContainerBase.threadStop(ContainerBase.java:1778)
        at org.apache.catalina.core.StandardContext.stop(StandardContext.java:5322)
        - locked com.sun.enterprise.web.WebModule_at_1d87a0de
        at com.sun.enterprise.web.WebModule.stop(WebModule.java:357)
        at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:1102)
        at com.sun.enterprise.web.WebContainer.unloadWebModule(WebContainer.java:2207)
        at com.sun.enterprise.web.WebContainer.unloadWebModule(WebContainer.java:2137)
        at com.sun.enterprise.server.WebModuleDeployEventListener.moduleUndeployed(WebModuleDeployEventListener.java:226)
        at com.sun.enterprise.server.WebModuleDeployEventListener.moduleUndeployed(WebModuleDeployEventListener.java:313)
        - locked com.sun.enterprise.server.WebModuleDeployEventListener_at_8596a84
        at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:976)
        at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:961)
        at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:464)
        at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:176)
        at com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:308)
        at com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:226)
        at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStopEvent(ServerDeploymentTarget.java:332)
        at com.sun.enterprise.deployment.phasing.ApplicationStopPhase.runPhase(ApplicationStopPhase.java:136)
        at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:108)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:919)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.stop(PEDeploymentService.java:652)
        at com.sun.enterprise.deployment.phasing.PEDeploymentService.stop(PEDeploymentService.java:699)
        at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.stop(ApplicationsConfigMBean.java:767)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:375)
        at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:358)
        at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:464)
        at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
        at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
        at sun.reflect.GeneratedMethodAccessor13.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:90)
        at $Proxy1.invoke(Unknown Source)
        at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:304)
        at com.sun.enterprise.interceptor.DynamicInterceptor.invoke(DynamicInterceptor.java:174)
        at com.sun.enterprise.deployment.client.DeploymentClientUtils.stopApplication(DeploymentClientUtils.java:121)
        at com.sun.enterprise.deployment.client.UndeployAction.run(UndeployAction.java:148)
        at java.lang.Thread.run(Thread.java:619)

   Locked ownable synchronizers:
        - None

...

"Session Monitor" - Thread t_at_978
   java.lang.Thread.State: BLOCKED on com.icesoft.faces.util.event.servlet.ContextEventRepeater_at_42d940ee owned by: ContainerBackgroundProcessor[StandardEngine[com.sun.appserv].StandardHost[server].StandardContext[/myvPlatform]]
        at com.icesoft.faces.util.event.servlet.ContextEventRepeater.sessionDestroyed(ContextEventRepeater.java:321)
        at org.apache.catalina.session.StandardSession.expire(StandardSession.java:777)
        - locked org.apache.catalina.session.StandardSession_at_3d920d57
        at org.apache.catalina.session.StandardSession.expire(StandardSession.java:735)
        at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:646)
        at org.apache.catalina.session.StandardSession.getAttributeNames(StandardSession.java:1187)
        at org.apache.catalina.session.StandardSessionFacade.getAttributeNames(StandardSessionFacade.java:153)
        at com.icesoft.faces.webapp.http.core.DisposeBeans.in(DisposeBeans.java:25)
        at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet$4.run(MainSessionBoundServlet.java:124)
        at com.icesoft.faces.webapp.http.servlet.MainSessionBoundServlet.shutdown(MainSessionBoundServlet.java:143)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.sessionShutdown(SessionDispatcher.java:98)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.notifySessionShutdown(SessionDispatcher.java:152)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher.access$300(SessionDispatcher.java:21)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Monitor.shutdown(SessionDispatcher.java:257)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Monitor.shutdownIfExpired(SessionDispatcher.java:262)
        at com.icesoft.faces.webapp.http.servlet.SessionDispatcher$Listener$1.run(SessionDispatcher.java:205)

   Locked ownable synchronizers:
        - None[/code]

Could it be that something blocking in our application (maybe ICEfaces) is causing the whole undeploy/redeploy to hang?

Regards,
David
[Message sent by forum member 'dklotz' (dklotz)]

http://forums.java.net/jive/thread.jspa?messageID=307469