[
https://issues.jboss.org/browse/DROOLS-1059?page=com.atlassian.jira.plugi...
]
Gireesh Sahukar commented on DROOLS-1059:
-----------------------------------------
[~mfusco] - Is there any chance your fix is available for the Drools 6.3.0 version that it
was reported against? We're using a platform that comes bundled with that version and
I'd prefer to just patch rather than incur performing regression of an entire
platform.
Drools can't find rules under stress
------------------------------------
Key: DROOLS-1059
URL:
https://issues.jboss.org/browse/DROOLS-1059
Project: Drools
Issue Type: Bug
Components: core engine
Affects Versions: 6.3.0.Final
Reporter: Massinissa BOUZIAD
Assignee: Mario Fusco
Priority: Blocker
Fix For: 6.4.0.Final, 7.0.0.Final
Attachments: DroolsBugReproducerTest.java, reproducerRule.drl
In my knowledge base, I have many rules.
All of them are working very well in production with drools 6.0.1-FINAL even in stress
condition hight trafic (arount 40 hits seconds)
This bug append when we made an upgrade with drools 6.3.0-FINAL which is compatible with
jdk8 mandatory in my case.
So now when I put my rules under stress test (benchmarking) I got this random error.
Drools is unable to find a query (not always the same one).
I got this error for 0,6% of my requests.
*+Following the stack trace : +*
Unable to find query 'checkAndBindBasket'
at org.drools.core.phreak.SegmentUtilities.getQueryLiaNode(SegmentUtilities.java:518)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.phreak.SegmentUtilities.getQuerySegmentMemory(SegmentUtilities.java:208)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.SegmentMemory$QueryMemoryPrototype.populateMemory(SegmentMemory.java:505)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.SegmentMemory$Prototype.newSegmentMemory(SegmentMemory.java:400)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.impl.KnowledgeBaseImpl.createSegmentFromPrototype(KnowledgeBaseImpl.java:1424)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.phreak.SegmentUtilities.restoreSegmentFromPrototype(SegmentUtilities.java:186)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.phreak.SegmentUtilities.createSegmentMemory(SegmentUtilities.java:83)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.LeftInputAdapterNode.assertObject(LeftInputAdapterNode.java:167)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:60)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:60)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:298)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:93)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:96)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:69)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:1993)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1289)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1294)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1281)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1260)
~[darty-pricing-ws-2.0.2.jar:2.0.2]
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)