Mario Fusco created DROOLS-700:
----------------------------------
Summary: ClassCastException using collect accumulator
Key: DROOLS-700
URL:
https://issues.jboss.org/browse/DROOLS-700
Project: Drools
Issue Type: Bug
Reporter: Mario Fusco
Assignee: Mario Fusco
When a collect accumulator is in a subnetwork the left tuple is unwrapped twice causing a
ClassCastException like the following:
java.lang.RuntimeException: java.lang.ClassCastException: ExpectedMessage cannot be cast
to org.drools.core.reteoo.LeftTuple
at org.drools.core.rule.SingleAccumulate.accumulate(SingleAccumulate.java:90)
at
org.drools.core.phreak.PhreakAccumulateNode.reaccumulateForLeftTuple(PhreakAccumulateNode.java:833)
at
org.drools.core.phreak.PhreakAccumulateNode.doLeftUpdatesProcessChildren(PhreakAccumulateNode.java:401)
at
org.drools.core.phreak.PhreakAccumulateNode.doLeftUpdates(PhreakAccumulateNode.java:301)
at org.drools.core.phreak.PhreakAccumulateNode.doNode(PhreakAccumulateNode.java:72)
at
org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:562)
at
org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:533)
at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:334)
at
org.drools.core.phreak.RuleNetworkEvaluator.evalStackEntry(RuleNetworkEvaluator.java:224)
at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:166)
at
org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:116)
at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:231)
at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:106)
at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1008)
at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1294)
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1289)
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1262)
at
org.drools.core.command.runtime.rule.FireAllRulesCommand.execute(FireAllRulesCommand.java:109)
at
org.drools.core.command.runtime.rule.FireAllRulesCommand.execute(FireAllRulesCommand.java:34)
at
org.drools.core.command.runtime.BatchExecutionCommandImpl.execute(BatchExecutionCommandImpl.java:155)
at
org.drools.core.command.runtime.BatchExecutionCommandImpl.execute(BatchExecutionCommandImpl.java:76)
at
org.drools.core.impl.StatelessKnowledgeSessionImpl.execute(StatelessKnowledgeSessionImpl.java:321)
Caused by: java.lang.ClassCastException: ExpectedMessage cannot be cast to
org.drools.core.reteoo.LeftTuple
at
org.drools.core.base.accumulators.CollectAccumulator.accumulate(CollectAccumulator.java:95)
at org.drools.core.rule.SingleAccumulate.accumulate(SingleAccumulate.java:82)
... 50 more
--
This message was sent by Atlassian JIRA
(v6.3.11#6341)