[jboss-jira] [JBoss JIRA] (DROOLS-1285) NPE caused by forced flushing of unlinked path in stream mode

Mario Fusco (JIRA) issues at jboss.org
Wed Sep 14 06:52:01 EDT 2016


Mario Fusco created DROOLS-1285:
-----------------------------------

             Summary: NPE caused by forced flushing of unlinked path in stream mode
                 Key: DROOLS-1285
                 URL: https://issues.jboss.org/browse/DROOLS-1285
             Project: Drools
          Issue Type: Bug
          Components: core engine
            Reporter: Mario Fusco
            Assignee: Mario Fusco


In stream mode it is necessary to enforce flushing of path memories. However doing this on an unlinked path is a waste of time and moreover can causes a NPE in presence of a subnetwork like the following:

{code}
java.lang.NullPointerException
	at org.drools.core.phreak.RuleNetworkEvaluator.deleteChildLeftTuple(RuleNetworkEvaluator.java:725)
	at org.drools.core.phreak.RuleNetworkEvaluator.unlinkAndDeleteChildLeftTuple(RuleNetworkEvaluator.java:718)
	at org.drools.core.phreak.PhreakJoinNode.doLeftDeletes(PhreakJoinNode.java:418)
	at org.drools.core.phreak.PhreakJoinNode.doNode(PhreakJoinNode.java:47)
	at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:519)
	at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:505)
	at org.drools.core.phreak.RuleNetworkEvaluator.evalNode(RuleNetworkEvaluator.java:341)
	at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:301)
	at org.drools.core.phreak.RuleNetworkEvaluator.doRiaNode(RuleNetworkEvaluator.java:573)
	at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:500)
	at org.drools.core.phreak.RuleNetworkEvaluator.evalNode(RuleNetworkEvaluator.java:341)
	at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:301)
	at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:136)
	at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:94)
	at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:194)
	at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:73)
	at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:969)
	at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1311)
	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1250)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1356)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1347)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1328)
{code}



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the jboss-jira mailing list