[JBoss JIRA] (DROOLS-1383) Deadlock in PackageClassLoader
by Mario Fusco (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1383?page=com.atlassian.jira.plugi... ]
Mario Fusco commented on DROOLS-1383:
-------------------------------------
What concerns me is mainly your last sentence
{quote}And in ClassLoader.class line 283, the parallelLockMap is null because ParallelLoaders.isRegistered(this.getClass()) returns false. So did the PackageClassLoader.class in Drools lost the register() method? I'm so confused about this.{quote}
I don't see why the PackageClassLoader should call that register() method. Afaik it never did in past and the it didn't "lost" that invocation.
That said it's really impossible for me to further investigate this issue without a proper reproducer. Could you please send one?
> Deadlock in PackageClassLoader
> ------------------------------
>
> Key: DROOLS-1383
> URL: https://issues.jboss.org/browse/DROOLS-1383
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.4.0.Final
> Reporter: Karen Zhu
> Assignee: Mario Fusco
> Priority: Blocker
>
> Found one deadlock in PackageLoader. Did I write rule in a bad way? How did a consequence of a rule will get the lock of PackageLoader which is needed by checkCerts(). Below is threaddump information.
> Found one Java-level deadlock:
> =============================
> "Thread-105-CustomClass-executor[17 17]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> "Thread-17-CustomClass-executor[33 33]":
> waiting to lock monitor 0x00007f933c0031f8 (object 0x00007f963ed294c0, a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader),
> which is held by "Thread-33-CustomClass-executor[9 9]"
> "Thread-33-CustomClass-executor[9 9]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> Java stack information for the threads listed above:
> ===================================================
> "Thread-105-CustomClass-executor[17 17]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-17-CustomClass-executor[33 33]":
> at java.lang.ClassLoader.checkCerts(ClassLoader.java:942)
> waiting to lock <0x00007f963ed294c0> (a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader)
> at java.lang.ClassLoader.preDefineClass(ClassLoader.java:666)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:794)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:665)
> locked <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-33-CustomClass-executor[9 9]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at com.cdr.apEventWrapperRules.ConstructorApBeansWrapper.constructorApBeansWrapper(ConstructorApBeansWrapper.java:55)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097.defaultConsequence(Rule_UCR2359988097.java:7)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1089)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:121)
> at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:74)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1007)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1350)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> Found 1 deadlock.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (DROOLS-1383) Deadlock in PackageClassLoader
by Karen Zhu (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1383?page=com.atlassian.jira.plugi... ]
Karen Zhu edited comment on DROOLS-1383 at 12/21/16 5:34 AM:
-------------------------------------------------------------
Thanks for reply. The threaddump information is just like attached. I just wonder how it will hold a PackageClassLoader lock when in a rule Consequence. I just new an object in the UCR2 rule consquence. Meanwhile, did Drools 6.4.0 support the parallel class load? In org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694), it will call internalDefineClass method then go into line 940 of ClassLoader.class of jdk. In this line, I think the parallelLockMap should not be null when jdk set the configuration as support parallel classload. Like the explanation in java doc below:
// Maps class name to the corresponding lock object when the current
// class loader is parallel capable.
// Note: VM also uses this field to decide if the current class loader
// is parallel capable and the appropriate lock object for class loading.
private final ConcurrentHashMap<String, Object> parallelLockMap;
And in ClassLoader.class line 283, the parallelLockMap is null because ParallelLoaders.isRegistered(this.getClass()) returns false. So did the PackageClassLoader.class in Drools lost the register() method? I'm so confused about this.
was (Author: whzhu):
Thanks for reply. The threaddump information is just like attached. I just wonder how it will hold a PackageClassLoader lock when in a rule Consequence. I just new an object in the UCR2 rule consquence. Meanwhile, did Drools 6.4.0 support the parallel class load? In org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694), it will call internalDefineClass method then go into line 940 of ClassLoader.class of jdk. In this line, I think the parallelLockMap should not be null when jdk set the configuration as support parallel classload. Like the explanation in java doc below:
// Maps class name to the corresponding lock object when the current
// class loader is parallel capable.
// Note: VM also uses this field to decide if the current class loader
// is parallel capable and the appropriate lock object for class loading.
private final ConcurrentHashMap<String, Object> parallelLockMap;
And in ClassLoader.class line 283, the parallelLockMap is null because ParallelLoaders.isRegistered(this.getClass()) returns false. So did the PackageClassLoader.class in Drools lost the register() method? I'm so confused about this.
> Deadlock in PackageClassLoader
> ------------------------------
>
> Key: DROOLS-1383
> URL: https://issues.jboss.org/browse/DROOLS-1383
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.4.0.Final
> Reporter: Karen Zhu
> Assignee: Mario Fusco
> Priority: Blocker
>
> Found one deadlock in PackageLoader. Did I write rule in a bad way? How did a consequence of a rule will get the lock of PackageLoader which is needed by checkCerts(). Below is threaddump information.
> Found one Java-level deadlock:
> =============================
> "Thread-105-CustomClass-executor[17 17]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> "Thread-17-CustomClass-executor[33 33]":
> waiting to lock monitor 0x00007f933c0031f8 (object 0x00007f963ed294c0, a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader),
> which is held by "Thread-33-CustomClass-executor[9 9]"
> "Thread-33-CustomClass-executor[9 9]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> Java stack information for the threads listed above:
> ===================================================
> "Thread-105-CustomClass-executor[17 17]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-17-CustomClass-executor[33 33]":
> at java.lang.ClassLoader.checkCerts(ClassLoader.java:942)
> waiting to lock <0x00007f963ed294c0> (a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader)
> at java.lang.ClassLoader.preDefineClass(ClassLoader.java:666)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:794)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:665)
> locked <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-33-CustomClass-executor[9 9]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at com.cdr.apEventWrapperRules.ConstructorApBeansWrapper.constructorApBeansWrapper(ConstructorApBeansWrapper.java:55)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097.defaultConsequence(Rule_UCR2359988097.java:7)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1089)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:121)
> at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:74)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1007)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1350)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> Found 1 deadlock.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (DROOLS-1383) Deadlock in PackageClassLoader
by Karen Zhu (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1383?page=com.atlassian.jira.plugi... ]
Karen Zhu commented on DROOLS-1383:
-----------------------------------
Thanks for reply. The threaddump information is just like attached. I just wonder how it will hold a PackageClassLoader lock when in a rule Consequence. I just new an object in the UCR2 rule consquence. Meanwhile, did Drools 6.4.0 support the parallel class load? In org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694), it will call internalDefineClass method then go into line 940 of ClassLoader.class of jdk. In this line, I think the parallelLockMap should not be null when jdk set the configuration as support parallel classload. Like the explanation in java doc below:
// Maps class name to the corresponding lock object when the current
// class loader is parallel capable.
// Note: VM also uses this field to decide if the current class loader
// is parallel capable and the appropriate lock object for class loading.
private final ConcurrentHashMap<String, Object> parallelLockMap;
And in ClassLoader.class line 283, the parallelLockMap is null because ParallelLoaders.isRegistered(this.getClass()) returns false. So did the PackageClassLoader.class in Drools lost the register() method? I'm so confused about this.
> Deadlock in PackageClassLoader
> ------------------------------
>
> Key: DROOLS-1383
> URL: https://issues.jboss.org/browse/DROOLS-1383
> Project: Drools
> Issue Type: Bug
> Components: core engine
> Affects Versions: 6.4.0.Final
> Reporter: Karen Zhu
> Assignee: Mario Fusco
> Priority: Blocker
>
> Found one deadlock in PackageLoader. Did I write rule in a bad way? How did a consequence of a rule will get the lock of PackageLoader which is needed by checkCerts(). Below is threaddump information.
> Found one Java-level deadlock:
> =============================
> "Thread-105-CustomClass-executor[17 17]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> "Thread-17-CustomClass-executor[33 33]":
> waiting to lock monitor 0x00007f933c0031f8 (object 0x00007f963ed294c0, a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader),
> which is held by "Thread-33-CustomClass-executor[9 9]"
> "Thread-33-CustomClass-executor[9 9]":
> waiting to lock monitor 0x00007f933c005b38 (object 0x00007f963ed294b0, a java.lang.Object),
> which is held by "Thread-17-CustomClass-executor[33 33]"
> Java stack information for the threads listed above:
> ===================================================
> "Thread-105-CustomClass-executor[17 17]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-17-CustomClass-executor[33 33]":
> at java.lang.ClassLoader.checkCerts(ClassLoader.java:942)
> waiting to lock <0x00007f963ed294c0> (a org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader)
> at java.lang.ClassLoader.preDefineClass(ClassLoader.java:666)
> at java.lang.ClassLoader.defineClass(ClassLoader.java:794)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.internalDefineClass(JavaDialectRuntimeData.java:694)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:665)
> locked <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at org.drools.core.rule.MVELDialectRuntimeData.getParserConfiguration(MVELDialectRuntimeData.java:299)
> at org.drools.core.base.mvel.MVELCompilationUnit.getCompiledExpression(MVELCompilationUnit.java:238)
> at org.drools.core.rule.constraint.MvelConstraint.createMvelConditionEvaluator(MvelConstraint.java:264)
> at org.drools.core.rule.constraint.MvelConstraint.evaluate(MvelConstraint.java:248)
> at org.drools.core.rule.constraint.MvelConstraint.isAllowed(MvelConstraint.java:214)
> at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:131)
> at org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:63)
> at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:366)
> at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:300)
> at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:78)
> at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:73)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2017)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1334)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> "Thread-33-CustomClass-executor[9 9]":
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.fastFindClass(JavaDialectRuntimeData.java:662)
> waiting to lock <0x00007f963ed294b0> (a java.lang.Object)
> at org.drools.core.rule.JavaDialectRuntimeData$PackageClassLoader.loadClass(JavaDialectRuntimeData.java:642)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
> at com.cdr.apEventWrapperRules.ConstructorApBeansWrapper.constructorApBeansWrapper(ConstructorApBeansWrapper.java:55)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097.defaultConsequence(Rule_UCR2359988097.java:7)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvokerGenerated.evaluate(Unknown Source)
> at com.cdr.apEventWrapperRules.Rule_UCR2359988097DefaultConsequenceInvoker.evaluate(Unknown Source)
> at org.drools.core.common.DefaultAgenda.fireActivation(DefaultAgenda.java:1089)
> at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:121)
> at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:74)
> at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1007)
> at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1350)
> at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1288)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1306)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1297)
> at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1278)
> Found 1 deadlock.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (WFLY-7520) VisualVM connection not possible in domain mode
by Gunther v. Wolffersdorff (JIRA)
[ https://issues.jboss.org/browse/WFLY-7520?page=com.atlassian.jira.plugin.... ]
Gunther v. Wolffersdorff closed WFLY-7520.
------------------------------------------
Resolution: Done
Labels: BitDefender JMX VisualVM (was: JMX VisualVM)
This behaviour is due to use of BitDefender traffic scan modul.
You have to white list the app server IP.
The curious thing is that a connection to the host controller is possible. A connection to a server host ist silently blocked.
> VisualVM connection not possible in domain mode
> -----------------------------------------------
>
> Key: WFLY-7520
> URL: https://issues.jboss.org/browse/WFLY-7520
> Project: WildFly
> Issue Type: Bug
> Components: JMX, Remoting
> Affects Versions: 10.1.0.Final
> Environment: Java version: 1.8.0_45, vendor: Oracle Corporation
> Java home: C:\Program Files\Java\jdk1.8.0_45\jre
> Default locale: de_DE, platform encoding: Cp1252
> OS name: "windows 8.1", version: "6.3", arch: "amd64", family: "dos"
> Reporter: Gunther v. Wolffersdorff
> Assignee: Kabir Khan
> Labels: JMX, VisualVM, BitDefender
>
> VisualVM cannot connect to domain host server via service:jmx:http-remoting-jmx .
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (DROOLS-1384) Objects in a List is not correctly unmarshalled by JSONMarshaller
by Edson Tirelli (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1384?page=com.atlassian.jira.plugi... ]
Edson Tirelli reassigned DROOLS-1384:
-------------------------------------
Assignee: Maciej Swiderski (was: Edson Tirelli)
> Objects in a List is not correctly unmarshalled by JSONMarshaller
> -----------------------------------------------------------------
>
> Key: DROOLS-1384
> URL: https://issues.jboss.org/browse/DROOLS-1384
> Project: Drools
> Issue Type: Bug
> Components: kie server
> Affects Versions: 7.0.0.Beta4
> Reporter: Toshiya Kobayashi
> Assignee: Maciej Swiderski
> Labels: support
>
> When JSONMarshaller marshalls and unmarshalls an object which has a List and the List contains custom class objects, the objects inside the List are instantiated but their properties are not populated.
> For example)
> Before marshall:
> {noformat}
> PojoA [name=A, pojoBList=[PojoB [name=B1, pojoCList=[PojoC [name=C1], PojoC [name=C2]]], PojoB [name=B2, pojoCList=[PojoC [name=C3]]]], stringList=[Hello, Bye]]
> {noformat}
> After marshall+unmarshall:
> {noformat}
> PojoA [name=A, pojoBList=[PojoB [name=null, pojoCList=null], PojoB [name=null, pojoCList=null]], stringList=[Hello, Bye]]
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (DROOLS-1384) Objects in a List is not correctly unmarshalled by JSONMarshaller
by Toshiya Kobayashi (JIRA)
[ https://issues.jboss.org/browse/DROOLS-1384?page=com.atlassian.jira.plugi... ]
Toshiya Kobayashi updated DROOLS-1384:
--------------------------------------
Git Pull Request: https://github.com/droolsjbpm/droolsjbpm-integration/pull/764
> Objects in a List is not correctly unmarshalled by JSONMarshaller
> -----------------------------------------------------------------
>
> Key: DROOLS-1384
> URL: https://issues.jboss.org/browse/DROOLS-1384
> Project: Drools
> Issue Type: Bug
> Components: kie server
> Affects Versions: 7.0.0.Beta4
> Reporter: Toshiya Kobayashi
> Assignee: Edson Tirelli
> Labels: support
>
> When JSONMarshaller marshalls and unmarshalls an object which has a List and the List contains custom class objects, the objects inside the List are instantiated but their properties are not populated.
> For example)
> Before marshall:
> {noformat}
> PojoA [name=A, pojoBList=[PojoB [name=B1, pojoCList=[PojoC [name=C1], PojoC [name=C2]]], PojoB [name=B2, pojoCList=[PojoC [name=C3]]]], stringList=[Hello, Bye]]
> {noformat}
> After marshall+unmarshall:
> {noformat}
> PojoA [name=A, pojoBList=[PojoB [name=null, pojoCList=null], PojoB [name=null, pojoCList=null]], stringList=[Hello, Bye]]
> {noformat}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (DROOLS-1384) Objects in a List is not correctly unmarshalled by JSONMarshaller
by Toshiya Kobayashi (JIRA)
Toshiya Kobayashi created DROOLS-1384:
-----------------------------------------
Summary: Objects in a List is not correctly unmarshalled by JSONMarshaller
Key: DROOLS-1384
URL: https://issues.jboss.org/browse/DROOLS-1384
Project: Drools
Issue Type: Bug
Components: kie server
Affects Versions: 7.0.0.Beta4
Reporter: Toshiya Kobayashi
Assignee: Edson Tirelli
When JSONMarshaller marshalls and unmarshalls an object which has a List and the List contains custom class objects, the objects inside the List are instantiated but their properties are not populated.
For example)
Before marshall:
{noformat}
PojoA [name=A, pojoBList=[PojoB [name=B1, pojoCList=[PojoC [name=C1], PojoC [name=C2]]], PojoB [name=B2, pojoCList=[PojoC [name=C3]]]], stringList=[Hello, Bye]]
{noformat}
After marshall+unmarshall:
{noformat}
PojoA [name=A, pojoBList=[PojoB [name=null, pojoCList=null], PojoB [name=null, pojoCList=null]], stringList=[Hello, Bye]]
{noformat}
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years
[JBoss JIRA] (WFCORE-2137) [GSS](7.1.0) NPE thrown during application redeployment, slaves taken offline
by Brad Maxwell (JIRA)
Brad Maxwell created WFCORE-2137:
------------------------------------
Summary: [GSS](7.1.0) NPE thrown during application redeployment, slaves taken offline
Key: WFCORE-2137
URL: https://issues.jboss.org/browse/WFCORE-2137
Project: WildFly Core
Issue Type: Bug
Components: Domain Management
Reporter: Brad Maxwell
Assignee: ehsavoie Hugonnet
Fix For: 3.0.0.Alpha2
We have some development Wildfly 10.0.0 servers running as slaves in a domain that frequently have WAR files redeployed. We have noticed that these slaves will often go offline after a redeployment of WAR files with the following stack trace:
{code}
2016-05-06 05:05:51,306 ERROR [org.jboss.as.controller.management-operation] (Host Controller Service Threads - 1012) WFLYCTL0190: Step handler org.jboss.as.domain.controller.operations.deployment.DeploymentFullReplaceHandler@3f68226b for operation {"operation" => "full-replace-deployment","name" => "whatever.war","enabled" => true,"content" => [{"hash" => bytes { 0x5d, 0x12, 0x18, 0x2b, 0x1c, 0x86, 0x71, 0x27, 0x08, 0x3d, 0xf1, 0x75, 0x08, 0x29, 0xa6, 0x49, 0x1f, 0x16, 0xe8, 0x22 }}],"operation-headers" => {"access-mechanism" => "NATIVE","domain-uuid" => "802ab616-dd2c-4081-a79c-c4d54e14c384","push-to-servers" => undefined},"address" => [],"runtime-name" => undefined} at address [] failed handling operation rollback -- java.lang.NullPointerException: java.lang.NullPointerException
at org.jboss.as.repository.LocalDeploymentFileRepository.deleteDeployment(LocalDeploymentFileRepository.java:59)
at org.jboss.as.host.controller.RemoteDomainConnectionService$RemoteFileRepository.deleteDeployment(RemoteDomainConnectionService.java:756)
at org.jboss.as.domain.controller.operations.deployment.DeploymentFullReplaceHandler$1.handleResult(DeploymentFullReplaceHandler.java:181)
at org.jboss.as.controller.AbstractOperationContext$Step.invokeResultHandler(AbstractOperationContext.java:1384)
at org.jboss.as.controller.AbstractOperationContext$Step.handleResult(AbstractOperationContext.java:1366)
at org.jboss.as.controller.AbstractOperationContext$Step.finalizeInternal(AbstractOperationContext.java:1328)
at org.jboss.as.controller.AbstractOperationContext$Step.finalizeStep(AbstractOperationContext.java:1311)
at org.jboss.as.controller.AbstractOperationContext$Step.access$300(AbstractOperationContext.java:1185)
at org.jboss.as.controller.AbstractOperationContext.executeResultHandlerPhase(AbstractOperationContext.java:767)
at org.jboss.as.controller.AbstractOperationContext.executeDoneStage(AbstractOperationContext.java:753)
at org.jboss.as.controller.AbstractOperationContext.processStages(AbstractOperationContext.java:680)
at org.jboss.as.controller.AbstractOperationContext.executeOperation(AbstractOperationContext.java:370)
at org.jboss.as.controller.OperationContextImpl.executeOperation(OperationContextImpl.java:1344)
at org.jboss.as.controller.ModelControllerImpl.internalExecute(ModelControllerImpl.java:392)
at org.jboss.as.controller.ModelControllerImpl.execute(ModelControllerImpl.java:217)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler.internalExecute(TransactionalProtocolOperationHandler.java:247)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler.doExecute(TransactionalProtocolOperationHandler.java:185)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:138)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$1.run(TransactionalProtocolOperationHandler.java:134)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:360)
at org.jboss.as.controller.AccessAuditContext.doAs(AccessAuditContext.java:81)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:157)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2$1.run(TransactionalProtocolOperationHandler.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at org.jboss.as.controller.remote.TransactionalProtocolOperationHandler$ExecuteRequestHandler$2.execute(TransactionalProtocolOperationHandler.java:153)
at org.jboss.as.protocol.mgmt.AbstractMessageHandler$ManagementRequestContextImpl$1.doExecute(AbstractMessageHandler.java:363)
at org.jboss.as.protocol.mgmt.AbstractMessageHandler$AsyncTaskRunner.run(AbstractMessageHandler.java:472)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
at org.jboss.threads.JBossThread.run(JBossThread.java:320)
{code}
This error will usually only happen for 2 out of the 4 identically configured slaves, and seems to happen randomly, although frequently enough.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
9 years