After integrating our application with Drools 4.0.7 tomcat running 3,4 days well with 75 users, suddenly we are facing InvocationTargetException caused by OutOfMemoryError for 3,4 users some times. The JAVA_OPTS options are well configured as observed no heap error issue. Heap utilization is only 60% but Foud that CodeCache is reaching maximum always. But codecache is non heap. Currently everyday out of production time we are restarting server to avoid sudden exception in production. The following is the exception we received as suggestion of finding the root cause.
In exception logs there is no permgen space erorr or heap error. Observed by probe after 2/3days codecache is becoming full only results in OutOfMemory as given below. For workaround we increased codecache size to 200 MB. As per the http://www.nabble.com/OutOfMemory-Error---3500-Rules-td17019001.html this type of issue is fixed. But in 4.0.7 itself we are facing this issue. Any suggestions? java.lang.reflect.InvocationTargetException at sun.reflect.GeneratedMethodAccessor2049.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.orbeon.oxf.processor.SimpleProcessor$1.readImpl(SimpleProcessor.java:70) at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1178) at org.orbeon.oxf.processor.JavaProcessor$1.readImpl(JavaProcessor.java:66) at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995) at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1178) at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:350) at org.orbeon.oxf.processor.pipeline.AggregatorProcessor.access$100(AggregatorProcessor.java:38) at org.orbeon.oxf.processor.pipeline.AggregatorProcessor$1.readImpl(AggregatorProcessor.java:93) at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:995) ................................. org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148) at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:199) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:282) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:754) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:684) at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:876) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684) at java.lang.Thread.run(Thread.java:619) Caused by: java.lang.OutOfMemoryError at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2427) at java.lang.Class.getDeclaredMethods(Class.java:1791) at org.codehaus.janino.ReflectionIClass.getDeclaredIMethods2(ReflectionIClass.java) at org.codehaus.janino.IClass.getDeclaredIMethods(IClass.java) at org.codehaus.janino.IClass.getDeclaredIMethods(IClass.java) at org.codehaus.janino.UnitCompiler.getIMethods(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.findIMethod(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compileGet2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.access$51(UnitCompiler.java) at org.codehaus.janino.UnitCompiler$9.visitMethodInvocation(UnitCompiler.java) at org.codehaus.janino.Java$MethodInvocation.accept(Java.java) at org.codehaus.janino.UnitCompiler.compileGet(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compileGetValue(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.access$25(UnitCompiler.java) at org.codehaus.janino.UnitCompiler$6.visitMethodInvocation(UnitCompiler.java) at org.codehaus.janino.Java$MethodInvocation.accept(Java.java) at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.access$8(UnitCompiler.java) at org.codehaus.janino.UnitCompiler$4.visitExpressionStatement(UnitCompiler.java) at org.codehaus.janino.Java$ExpressionStatement.accept(Java.java) at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.access$7(UnitCompiler.java) at org.codehaus.janino.UnitCompiler$4.visitBlock(UnitCompiler.java) at org.codehaus.janino.Java$Block.accept(Java.java) at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compile2(UnitCompiler.java) at org.codehaus.janino.UnitCompiler$3.visitPackageMemberClassDeclaration(UnitCompiler.java) at org.codehaus.janino.Java$PackageMemberClassDeclaration.accept(Java.java) at org.codehaus.janino.UnitCompiler.compile(UnitCompiler.java) at org.codehaus.janino.UnitCompiler.compileUnit(UnitCompiler.java) at org.codehaus.janino.Compiler.compile(Compiler.java) at org.drools.commons.jci.compilers.JaninoJavaCompiler.compile(JaninoJavaCompiler.java:174) at org.drools.commons.jci.compilers.AbstractJavaCompiler.compile(AbstractJavaCompiler.java:51) at org.drools.rule.builder.dialect.java.JavaDialect.compileAll(JavaDialect.java:342) at org.drools.compiler.DialectRegistry.compileAll(DialectRegistry.java:60) at org.drools.compiler.PackageBuilder.addPackage(PackageBuilder.java:308) at org.drools.compiler.PackageBuilder.addPackageFromDrl(PackageBuilder.java:208) ........ at com.expeditor.utilities.WorkflowUtility.readRule(WorkflowUtility.java:124) at com.expeditor.workallocation.ExpeditorActionHandler.execute(ExpeditorActionHandler.java:48) at org.jbpm.graph.def.Action.execute(Action.java:122) at sun.reflect.GeneratedMethodAccessor722.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157) at org.jbpm.graph.def.Action$$EnhancerByCGLIB$$4193ea21.execute(<generated>) at org.jbpm.graph.def.GraphElement.executeAction(GraphElement.java:255) at org.jbpm.graph.def.Node.execute(Node.java:338) at org.jbpm.graph.def.Node.enter(Node.java:318) at sun.reflect.GeneratedMethodAccessor679.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157) at org.jbpm.graph.def.Node$$EnhancerByCGLIB$$c5b9aeed.enter(<generated>) at org.jbpm.graph.def.Transition.take(Transition.java:151) at org.jbpm.graph.def.Node.leave(Node.java:393) at org.jbpm.graph.node.TaskNode.leave(TaskNode.java:209) at sun.reflect.GeneratedMethodAccessor733.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157) at org.jbpm.graph.node.TaskNode$$EnhancerByCGLIB$$ffffa537.leave(<generated>) at org.jbpm.graph.exe.Token.signal(Token.java:194) at org.jbpm.graph.exe.Token.signal(Token.java:165) at sun.reflect.GeneratedMethodAccessor732.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at org.hibernate.proxy.pojo.cglib.CGLIBLazyInitializer.invoke(CGLIBLazyInitializer.java:157) at org.jbpm.graph.exe.Token$$EnhancerByCGLIB$$72485581.signal(<generated>) -- View this message in context: http://www.nabble.com/Jboss-Drools-4.0.7-OutOfMemory-issue-%2C-code-cache-reaching%09it%27s-maximum-size-tp25815941p25815941.html Sent from the drools - user mailing list archive at Nabble.com. _______________________________________________ rules-users mailing list [email protected] https://lists.jboss.org/mailman/listinfo/rules-users
