5 Replies Latest reply on Feb 5, 2010 6:17 PM by Peter Johnson

    Faild to delete tmp/deploy

    Sascha Hoffmann Newbie

      Hello folks

       

      I have a little problem with my JBoss 4.2.3 GA AS. I checked my server.log because I got a permGenSpace error and detected that the tmp-files for my Web Application have not been deleted.

       

      .......

      2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete file: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib\jboss-seam-ui.jar
      2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib
      2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib
      2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF
      2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF
      2010-02-04 08:23:59,609 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war
      ........

       

      I don't know if this fix the problem with the permGenSpace I would like to know why this problem occurs.

      Is there a way to fix the problem?

       

      Any idea could help me

       

      P.S. Sorry for my bad english!!!

        • 1. Re: Faild to delete tmp/deploy
          jaikiran pai Master

          When does the PermGen error occur? When you are redeploying? See this for details http://community.jboss.org/wiki/OutOfMemoryExceptionWhenRedeploying

           

          Ceene wrote:

           

          .......

          2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete file: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib\jboss-seam-ui.jar
          2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib
          2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF\lib
          2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF
          2010-02-04 08:23:59,437 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war\WEB-INF
          2010-02-04 08:23:59,609 DEBUG [org.jboss.util.file.Files] Failed to delete dir: C:\jboss-4.2.3.GA\server\default\tmp\deploy\tmp2279CMB.ear-contents\app-exp.war
          ........

           

           

          You can ignore those "Failed to delete..." DEBUG messages.

          1 of 1 people found this helpful
          • 2. Re: Faild to delete tmp/deploy
            Sascha Hoffmann Newbie

            Thank you for the fast answer.

             

            The error occured after I and many others worked a few days with the Web-Application.

            .......

            15:44:52,762 ERROR [ExceptionFilter] uncaught exception
            javax.servlet.ServletException: Servlet execution threw an exception
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:313)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:63)
                at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:57)
                at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                at org.jboss.seam.debug.hot.HotDeployFilter.doFilter(HotDeployFilter.java:60)
                at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
                at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                at org.jboss.seam.web.MultipartFilter.doFilter(MultipartFilter.java:79)
                at org.jboss.seam.web.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:49)
                at org.jboss.seam.web.SeamFilter.doFilter(SeamFilter.java:84)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at src.klassen.SessionTimeoutFilter.doFilter(SessionTimeoutFilter.java:52)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
                at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
                at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
                at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
                at java.lang.Thread.run(Thread.java:619)
            Caused by: java.lang.OutOfMemoryError: PermGen space
                at java.lang.Class.getDeclaredMethods0(Native Method)
                at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
                at java.lang.Class.getDeclaredMethod(Class.java:1935)
                at java.io.ObjectStreamClass.getPrivateMethod(ObjectStreamClass.java:1382)
                at java.io.ObjectStreamClass.access$1700(ObjectStreamClass.java:52)
                at java.io.ObjectStreamClass$2.run(ObjectStreamClass.java:438)
                at java.security.AccessController.doPrivileged(Native Method)
                at java.io.ObjectStreamClass.<init>(ObjectStreamClass.java:413)
            .......

             

            But before that I got other errors like the following. The errors occur if I make a logout in the Application. I don't know if this is the base of the problem.

            ........

            15:21:10,326 WARN  [Contexts] Could not destroy component: managercmb
            javax.ejb.EJBException: java.lang.RuntimeException: java.lang.NoClassDefFoundError: com/sun/el/ExpressionFactoryImpl
                at org.jboss.ejb3.tx.Ejb3TxPolicy.handleExceptionInOurTx(Ejb3TxPolicy.java:63)
                at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:83)
                at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:191)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:95)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.stateful.StatefulInstanceInterceptor.invoke(StatefulInstanceInterceptor.java:83)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.stateful.StatefulRemoveInterceptor.invoke(StatefulRemoveInterceptor.java:97)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
                at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:110)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:46)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.stateful.StatefulContainer.localInvoke(StatefulContainer.java:206)
                at org.jboss.ejb3.stateful.StatefulLocalProxy.invoke(StatefulLocalProxy.java:119)
                at $Proxy118.destroy(Unknown Source)
                at sun.reflect.GeneratedMethodAccessor991.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                at java.lang.reflect.Method.invoke(Method.java:597)
                at org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
                at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
                at org.jboss.seam.intercept.ClientSideInterceptor$1.proceed(ClientSideInterceptor.java:72)
                at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:57)
                at org.jboss.seam.interceptors.RemoveInterceptor.aroundInvoke(RemoveInterceptor.java:40)
                at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                at org.jboss.seam.interceptors.SynchronizationInterceptor.aroundInvoke(SynchronizationInterceptor.java:31)
                at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                at org.jboss.seam.intercept.ClientSideInterceptor.invoke(ClientSideInterceptor.java:50)
                at org.javassist.tmp.java.lang.Object_$$_javassist_76.destroy(Object_$$_javassist_76.java)
                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 org.jboss.seam.util.Reflections.invoke(Reflections.java:20)
                at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:123)
                at org.jboss.seam.Component.callComponentMethod(Component.java:1834)
                at org.jboss.seam.Component.callDestroyMethod(Component.java:1765)
                at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:231)
                at org.jboss.seam.contexts.Lifecycle.endSession(Lifecycle.java:297)
                at org.jboss.seam.servlet.SeamListener.sessionDestroyed(SeamListener.java:45)
                at org.apache.catalina.session.StandardSession.expire(StandardSession.java:702)
                at org.apache.catalina.session.StandardSession.isValid(StandardSession.java:592)
                at org.apache.catalina.session.ManagerBase.processExpires(ManagerBase.java:681)
                at org.apache.catalina.session.ManagerBase.backgroundProcess(ManagerBase.java:666)
                at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1315)
                at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1600)
                at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1609)
                at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1609)
                at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1589)
                at java.lang.Thread.run(Thread.java:619)
            Caused by: java.lang.RuntimeException: java.lang.NoClassDefFoundError: com/sun/el/ExpressionFactoryImpl
                at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:128)
                at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.entity.ExtendedPersistenceContextPropagationInterceptor.invoke(ExtendedPersistenceContextPropagationInterceptor.java:57)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:47)
                at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
                at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
                ... 53 more
            Caused by: java.lang.NoClassDefFoundError: com/sun/el/ExpressionFactoryImpl
                at org.jboss.seam.core.Expressions$1.getValueExpression(Expressions.java:110)
                at org.jboss.seam.core.Expressions$1.getValue(Expressions.java:73)
                at org.jboss.seam.Component.getInstanceFromFactory(Component.java:1684)
                at org.jboss.seam.Component.getInstance(Component.java:1633)
                at org.jboss.seam.Component.getInstance(Component.java:1610)
                at org.jboss.seam.Component.getValueToInject(Component.java:1885)
                at org.jboss.seam.Component.injectAttributes(Component.java:1368)
                at org.jboss.seam.Component.inject(Component.java:1195)
                at org.jboss.seam.interceptors.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:46)
                at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                at org.jboss.seam.interceptors.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:27)
                at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:69)
                at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:103)
                at org.jboss.seam.intercept.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:53)
                at sun.reflect.GeneratedMethodAccessor97.invoke(Unknown Source)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
                at java.lang.reflect.Method.invoke(Method.java:597)
                at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:118)
                ... 62 more
            Caused by: java.lang.ClassNotFoundException: No ClassLoaders found for: com.sun.el.ExpressionFactoryImpl
                at org.jboss.mx.loading.LoadMgr3.beginLoadTask(LoadMgr3.java:306)
                at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:521)
                at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
                at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
                at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:316)
            .........

             

            I hope you can help me.

             

            Does anybody can help? PLEASE!!!

            • 3. Re: Faild to delete tmp/deploy
              Peter Johnson Master
              If you keep on redeploying applications to a running app server then you are bound to get permgen full errors because, for a variety of reasons, quite often not all of the resources for the old application version get removed when a new application version gets deployed.  The easiest thing to do is reboot the app server every now and then.
              • 4. Re: Faild to delete tmp/deploy
                Sascha Hoffmann Newbie

                That I know.......

                The problem is that I do not redeploy any application. The only thing I do is that

                I work with the application. Login the Application....... do something........ and logout.

                And that quit often.

                And after a few days I get the permgenspace error.

                • 5. Re: Faild to delete tmp/deploy
                  Peter Johnson Master

                  I'm sorry, when you wrote "I and many others worked a few days with the Web-Application" I assumed that you were talking about developers working on the web app, not end users using it.

                   

                  Try adding "-verbose:classes" to the JVM options. This option causes the JVM to print out a message to stdout each time it loads a class. The only way the permgen can fill up is if classes are loaded. Which classes are being loaded should help in identifying the problem.

                   

                  Also you might try monitoring the permgen using JConsole or VisualVM; knowing when and how the pergen insreases in size would help.

                   

                  Finally, what JVM options are you using? Are you by any chance using the CMS collector?