[
https://issues.jboss.org/browse/JBRULES-2887?page=com.atlassian.jira.plug...
]
Alessandro Lazarotti commented on JBRULES-2887:
-----------------------------------------------
I requested to reopen this case because this issue still happens.
Attached to this Jira is a new test project (JB2887.zip) with a simplified pattern that
demonstrates the problem.
It was tested with Drools 5.1.1 Final, SVN 5.1.x branch(/labs/jbossrules/branches/5.1.x/
), BRMS 5.1, and last Drools 5.2 build (master branch in Apr/12/2011) - It fails in all.
The same pattern runs successfully in Drools 5.0.x or BRMS 5.0.x
AccumulateNode runs into NPE
----------------------------
Key: JBRULES-2887
URL:
https://issues.jboss.org/browse/JBRULES-2887
Project: Drools
Issue Type: Bug
Security Level: Public(Everyone can see)
Components: drools-core
Affects Versions: 5.1.1.FINAL
Reporter: Wolfgang Laun
Assignee: Edson Tirelli
Priority: Critical
Fix For: 5.2.0.M1
Attachments: DroolsTest.java, JB2887.zip, SampleAlarmRules.drl
A rule such as
rule "average"
when
B( id < 10 )
$list: List() from collect ( A() over window:time(10s) )
Number( $avg: doubleValue ) from accumulate( A( $id : id ) from $list,
average( $id ) )
then
System.out.println( "average = " + $avg );
end
runs into a NPE
Caused by: java.lang.NullPointerException
at org.drools.reteoo.AccumulateNode.getFirstMatch(AccumulateNode.java:967)
at org.drools.reteoo.AccumulateNode.splitList(AccumulateNode.java:920)
at
org.drools.reteoo.AccumulateNode.removePreviousMatchesForLeftTuple(AccumulateNode.java:874)
at org.drools.reteoo.AccumulateNode.retractLeftTuple(AccumulateNode.java:205)
at
org.drools.reteoo.CompositeLeftTupleSinkAdapter.doPropagateRetractLeftTuple(CompositeLeftTupleSinkAdapter.java:238)
at
org.drools.reteoo.CompositeLeftTupleSinkAdapter.propagateRetractLeftTupleDestroyRightTuple(CompositeLeftTupleSinkAdapter.java:138)
at org.drools.reteoo.AccumulateNode.retractLeftTuple(AccumulateNode.java:212)
at org.drools.reteoo.ModifyPreviousTuples.retractTuples(ModifyPreviousTuples.java:111)
at org.drools.reteoo.EntryPointNode.modifyObject(EntryPointNode.java:176)
at org.drools.common.NamedEntryPoint.update(NamedEntryPoint.java:450)
at org.drools.common.NamedEntryPoint.update(NamedEntryPoint.java:361)
at org.drools.base.DefaultKnowledgeHelper.update(DefaultKnowledgeHelper.java:183)
at org.drools.base.DefaultKnowledgeHelper.update(DefaultKnowledgeHelper.java:196)
at event.Rule_launch_0.defaultConsequence(Rule_launch_0.java:7)
at
event.Rule_launch_0DefaultConsequenceInvoker.evaluate(Rule_launch_0DefaultConsequenceInvoker.java:33)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:913)
A null Parameter accctx is passed down from retractLeftTuple.
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira