[rules-users] permgen error for simple rule stress test

Mark Proctor mproctor at codehaus.org
Wed Jan 29 19:25:49 EST 2014


5.x is in maintenance now, it’s unlikely we will fix this - unless it’s requested by a paying customer.  Although we will still consider community provided fixes. If it’s related to the permgen fixes we did for 5.6, it may already be fixed by that.

If you can show the issue is still present in 6x, we will try and hunt it down and fix it there.


Mark


On 29 Jan 2014, at 22:08, anjana.ackroyd <anjana.ackroyd at gmail.com> wrote:

> Mark,
> 
> I did some more analysis  and I tracked it down to Guvnor my app connects to 
> running out of memory before the test starts failing.Once I restart guvnor
> and redo my tests I get good response time and it eventually starts to slow
> down then throw 500 errors.
> 
> I see a whole bunch of logs for Creating RulesRepository with default
> username.  like before it throws out of memory
> 
> 
> 
> 
> 
> 
> WARN  29-01 14:08:18,920 (RulesRepositoryManager.java:getRulesRepository:70)    
> Creating RulesRepository with default username.
> =============== session-guest-779944
> =============== session-guest-779944
> java.lang.OutOfMemoryError: GC overhead limit exceeded
>        at
> org.jboss.weld.util.reflection.Reflections$TypeHolder.wrap(Reflections.java:542)
>        at
> org.jboss.weld.util.reflection.Reflections$TypeHolder.access$000(Reflections.java:470)
>        at
> org.jboss.weld.util.reflection.Reflections.isAssignableFrom(Reflections.java:320)
>        at
> org.jboss.weld.util.reflection.Reflections.isAssignableFrom(Reflections.java:290)
>        at
> org.jboss.weld.resolution.ResolvableBuilder.create(ResolvableBuilder.java:123)
>        at
> org.jboss.weld.manager.BeanManagerImpl.getBeans(BeanManagerImpl.java:486)
>        at
> org.jboss.weld.injection.ParameterInjectionPoint.getValueToInject(ParameterInjectionPoint.java:118)
>        at
> org.jboss.weld.injection.MethodInjectionPoint.getParameterValues(MethodInjectionPoint.java:217)
>        at
> org.jboss.weld.injection.MethodInjectionPoint.invokeOnInstance(MethodInjectionPoint.java:137)
>        at
> org.jboss.weld.bean.ProducerMethod$ProducerMethodProducer.produce(ProducerMethod.java:136)
>        at
> org.jboss.weld.bean.AbstractProducerBean$AbstractProducer.produce(AbstractProducerBean.java:319)
>        at
> org.jboss.weld.bean.AbstractProducerBean.create(AbstractProducerBean.java:307)
>        at
> org.jboss.weld.context.AbstractContext.get(AbstractContext.java:107)
>        at
> org.jboss.weld.bean.proxy.ContextBeanInstance.getInstance(ContextBeanInstance.java:90)
>        at
> org.jboss.weld.bean.proxy.ProxyMethodHandler.invoke(ProxyMethodHandler.java:79)
>        at
> org.drools.repository.RulesRepository$Proxy$_$$_WeldClientProxy.loadModule(RulesRepository$Proxy$_$$_WeldClientProxy.java)
>        at
> org.drools.guvnor.server.files.FileManagerService.getLastModified(FileManagerService.java:378)
>        at
> org.drools.guvnor.server.files.FileManagerService$Proxy$_$$_WeldClientProxy.getLastModified(FileManagerService$Proxy$_$$_WeldClientProxy.java)
>        at
> org.drools.guvnor.server.files.PackageDeploymentServlet.getLastModified(PackageDeploymentServlet.java:74)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:636)
>        at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
>        at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
>        at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
>        at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
>        at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
>        at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
>        at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
>        at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
>        at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
>        at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
>        at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
>        at
> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
> 
> 
> 
> 
> 
> 
> We are running guvnor 5.5.0-Final on Springsource TOmcat 7.0.23
> 
> 
> 
> 
> JAVA_HOME="/usr/pservices/jdk1.7.0_45"
> AGENT_PATHS=""
> JAVA_AGENTS=""
> JAVA_LIBRARY_PATH=""
> JVM_OPTS="-Xms4096m -Xmx4096m -XX:NewSize=2048m -XX:PermSize=512m
> -XX:MaxPermSize=512m -Xss1024K "
> JAVA_OPTS="$JVM_OPTS $AGENT_PATHS $JAVA_AGENTS $JAVA_LIBRARY_PATH"
> 
> 
> 
> 
> 
> 
> --
> View this message in context: http://drools.46999.n3.nabble.com/permgen-error-for-simple-rule-stress-test-tp4027895p4027925.html
> Sent from the Drools: User forum mailing list archive at Nabble.com.
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users




More information about the rules-users mailing list