[rules-users] Drools Concurrent Execution causes Blocked Threads
lalit2583
lalit2583 at gmail.com
Wed Aug 21 04:42:40 EDT 2013
Hi All,
We are using Drools-core 5.2.0.M2 version and we are facing issue while
inserting facts within
StatefulKnowledge session we insert around 50 facts in single request. We
have 10 threads concurrently requesting for fireAllRules. We are using mvel
dialect and our threads are getting blocked over class.forName
Below is the thread dump
java.lang.Thread.State: BLOCKED (on object monitor) at
java.lang.Class.forName0(Native Method) at
java.lang.Class.forName(Class.java:247) at
org.mvel2.ParserConfiguration.checkForDynamicImport(ParserConfiguration.java:110)
at
org.mvel2.ParserConfiguration.hasImport(ParserConfiguration.java:140)
at org.mvel2.ParserContext.hasImport(ParserContext.java:343) at
org.mvel2.compiler.AbstractParser.createPropertyToken(AbstractParser.java:1308)
at org.mvel2.compiler.AbstractParser.nextToken(AbstractParser.java:830)
at
org.mvel2.compiler.ExpressionCompiler._compile(ExpressionCompiler.java:132)
at org.mvel2.util.ParseTools.subCompileExpression(ParseTools.java:2097)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.getMethod(ReflectiveAccessorOptimizer.java:900)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.compileGetChain(ReflectiveAccessorOptimizer.java:338)
at
org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeAccessor(ReflectiveAccessorOptimizer.java:140)
at org.mvel2.ast.ASTNode.optimize(ASTNode.java:158) at
org.mvel2.ast.ASTNode.getReducedValueAccelerated(ASTNode.java:115) at
org.mvel2.ast.Or.getReducedValueAccelerated(Or.java:31) at
org.mvel2.ast.Or.getReducedValueAccelerated(Or.java:31) at
org.mvel2.MVELRuntime.execute(MVELRuntime.java:87) at
org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:125)
at org.mvel2.MVEL.executeExpression(MVEL.java:954) at
org.drools.base.mvel.MVELPredicateExpression.evaluate(MVELPredicateExpression.java:97)
at
org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:291)
at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:134) at
org.drools.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:450)
at
org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:378)
at
org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:360)
at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:138) at
org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:59)
at
org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:185)
at org.drools.reteoo.EntryPointNode.assertObject(EntryPointNode.java:143)
at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:332)
at org.drools.common.NamedEntryPoint.insert(NamedEntryPoint.java:293)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:905)
at
org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:864)
at
org.drools.impl.StatefulKnowledgeSessionImpl.insert(StatefulKnowledgeSessionImpl.java:251)
at
Please advise if this is a known issues in MVEL 2?
Regards,
Lalit.
--
View this message in context: http://drools.46999.n3.nabble.com/Drools-Concurrent-Execution-causes-Blocked-Threads-tp4025632.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
More information about the rules-users
mailing list