]
RH Bugzilla Integration commented on DROOLS-749:
------------------------------------------------
Marek Winkler <mwinkler(a)redhat.com> changed the Status of [bug
Events deserialization is broken
--------------------------------
Key: DROOLS-749
URL:
https://issues.jboss.org/browse/DROOLS-749
Project: Drools
Issue Type: Bug
Reporter: Mario Fusco
Assignee: Mario Fusco
Priority: Critical
Fix For: 6.3.0.Beta1
When a KieSession is deserialized the events present in the old serialized session are
reasserted into the new session. Then if one of this event causes a scheduler to be
immediately triggered this is done in a callback out of the main evaluation loop. This
implies that the left tuples resulting from the triggering of the scheduler aren't
propagated to the sink of the TimerNode which created the scheduler itself. This missing
propagation can, in some circumstances, cause a NullPointerException like the following:
{code}
java.lang.NullPointerException
at org.drools.core.phreak.PhreakTimerNode.doLeftDeletes(PhreakTimerNode.java:197)
at org.drools.core.phreak.PhreakTimerNode.doNode(PhreakTimerNode.java:63)
at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:364)
at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:163)
at
org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:118)
at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:254)
at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:108)
at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:1022)
at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1352)
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1318)
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1301)
at
org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1280)
{code}