Details
-
Bug
-
Status: Closed
-
Blocker
-
Resolution: Duplicate
-
1.7.0
-
None
-
None
-
None
-
n.a.
Description
Groovy script execution locked our application server. Here's the relevant stack trace:
Name: WebConnectorWorker-localhost:8102-2 State: BLOCKED on java.lang.Class@1b660ee owned by: WorkflowTimerWorker-1265798225457 Total blocked: 466 Total waited: 462 Stack trace: java.beans.Introspector.getPublicDeclaredMethods(Introspector.java:1271) java.beans.Introspector.internalFindMethod(Introspector.java:1321) java.beans.Introspector.findMethod(Introspector.java:1392) java.beans.Introspector.findMethod(Introspector.java:1372) java.beans.PropertyDescriptor.getReadMethod(PropertyDescriptor.java:179) - locked java.beans.PropertyDescriptor@c0623d groovy.lang.MetaClassImpl.applyPropertyDescriptors(MetaClassImpl.java:2209) groovy.lang.MetaClassImpl.setupProperties(MetaClassImpl.java:1993) groovy.lang.MetaClassImpl.addProperties(MetaClassImpl.java:2934) groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:2905) - locked groovy.lang.MetaClassImpl@74ceb0 org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:164) org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:193) org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:199) org.codehaus.groovy.runtime.InvokerHelper.getMetaClass(InvokerHelper.java:697) org.codehaus.groovy.runtime.callsite.AbstractCallSite.createPojoMetaClassGetPropertySite(AbstractCallSite.java:280) org.codehaus.groovy.runtime.callsite.AbstractCallSite.createGetPropertySite(AbstractCallSite.java:260) org.codehaus.groovy.runtime.callsite.AbstractCallSite.acceptGetProperty(AbstractCallSite.java:245) org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:237) org.codehaus.groovy.ast.builder.AstBuilderInvocationTrap$_closure1.doCall(AstBuilderTransformation.groovy:127) sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) java.lang.reflect.Method.invoke(Method.java:597) org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:88) groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:233) org.codehaus.groovy.runtime.metaclass.ClosureMetaClass.invokeMethod(ClosureMetaClass.java:272) groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.java:886) groovy.lang.Closure.call(Closure.java:276) groovy.lang.Closure.call(Closure.java:289) org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1167) org.codehaus.groovy.runtime.DefaultGroovyMethods.each(DefaultGroovyMethods.java:1143) org.codehaus.groovy.runtime.dgm$108.invoke(Unknown Source) org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoMetaMethodSiteNoUnwrapNoCoerce.invoke(PojoMetaMethodSite.java:270) org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMethodSite.java:52) org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) org.codehaus.groovy.runtime.callsite.AbstractCallSite.callSafe(AbstractCallSite.java:90) org.codehaus.groovy.ast.builder.AstBuilderInvocationTrap.<init>(AstBuilderTransformation.groovy:126) sun.reflect.GeneratedConstructorAccessor477.newInstance(Unknown Source) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) java.lang.reflect.Constructor.newInstance(Constructor.java:513) org.codehaus.groovy.reflection.CachedConstructor.invoke(CachedConstructor.java:77) org.codehaus.groovy.runtime.callsite.ConstructorSite$ConstructorSiteNoUnwrapNoCoerce.callConstructor(ConstructorSite.java:107) org.codehaus.groovy.runtime.callsite.AbstractCallSite.callConstructor(AbstractCallSite.java:212) org.codehaus.groovy.ast.builder.AstBuilderTransformation.visit(AstBuilderTransformation.groovy:47) org.codehaus.groovy.transform.ASTTransformationVisitor$3.call(ASTTransformationVisitor.java:303) org.codehaus.groovy.control.CompilationUnit.applyToSourceUnits(CompilationUnit.java:831) org.codehaus.groovy.control.CompilationUnit.doPhaseOperation(CompilationUnit.java:519) org.codehaus.groovy.control.CompilationUnit.processPhaseOperations(CompilationUnit.java:495) org.codehaus.groovy.control.CompilationUnit.compile(CompilationUnit.java:472) groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:291) - locked java.util.HashMap@52b63d groovy.lang.GroovyClassLoader.parseClass(GroovyClassLoader.java:262) de.uplanet.lucy.server.scripting.groovy.IxGroovySystem.parseClass(Unknown Source) de.uplanet.lucy.server.workflow.action.GroovyScriptWorkflowAction.process(Unknown Source) de.uplanet.lucy.server.workflow.WorkflowEngine.a(Unknown Source) ... Name: WorkflowTimerWorker-1265798225457 State: BLOCKED on java.util.HashMap@52b63d owned by: WebConnectorWorker-localhost:8102-2 Total blocked: 1.050 Total waited: 1 Stack trace: groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:707) groovy.lang.GroovyClassLoader$InnerLoader.loadClass(GroovyClassLoader.java:425) groovy.lang.GroovyClassLoader.loadClass(GroovyClassLoader.java:772) java.lang.ClassLoader.loadClass(ClassLoader.java:248) java.beans.Introspector.instantiate(Introspector.java:1453) java.beans.Introspector.findExplicitBeanInfo(Introspector.java:425) - locked java.lang.Class@1b660ee java.beans.Introspector.<init>(Introspector.java:374) java.beans.Introspector.getBeanInfo(Introspector.java:168) groovy.lang.MetaClassImpl$15.run(MetaClassImpl.java:2924) java.security.AccessController.doPrivileged(Native Method) groovy.lang.MetaClassImpl.addProperties(MetaClassImpl.java:2922) groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:2905) - locked groovy.lang.MetaClassImpl@2c7b08 org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:164) org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:180) org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.getMetaClass(MetaClassRegistryImpl.java:195) org.codehaus.groovy.runtime.InvokerHelper.getMetaClass(InvokerHelper.java:701) groovy.lang.GroovyObjectSupport.<init>(GroovyObjectSupport.java:32) groovy.lang.Script.<init>(Script.java:40) groovy.lang.Script.<init>(Script.java:37) scriptAFC7EDDF24EE93BAE3B63496F7416D8B3C9898A8.<init>(scriptAFC7EDDF24EE93BAE3B63496F7416D8B3C9898A8.groovy) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) java.lang.reflect.Constructor.newInstance(Constructor.java:513) java.lang.Class.newInstance0(Class.java:355) java.lang.Class.newInstance(Class.java:308) org.codehaus.groovy.runtime.InvokerHelper.createScript(InvokerHelper.java:400) de.uplanet.lucy.server.workflow.eventhandler.GroovyScriptWorkflowEventHandler.process(Unknown Source) de.uplanet.lucy.server.workflow.WorkflowEngine.a(Unknown Source) ...
Attachments
Issue Links
- relates to
-
GROOVY-4002 deadlock in GroovyClassLoader
- Closed
-
GROOVY-4127 deadlock in concurrent calls of GroovyShell.parse method against the same GroovyShell object
- Closed