[jboss-jira] [JBoss JIRA] (DROOLS-4864) accumulate causes NullPointerException

Vedran Prišćan (Jira) issues at jboss.org
Tue Dec 10 05:49:00 EST 2019


     [ https://issues.redhat.com/browse/DROOLS-4864?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Vedran Prišćan updated DROOLS-4864:
-----------------------------------
    Description: 
NullPointerException is thrown in AddRemoveRule::iterateLeftTuple when *removing* a rule that contains *accumulate* with *max* function and a *source pattern that matches no object*. 

{noformat}
Caused by: java.lang.NullPointerException
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1040)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1047)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.visitChild(AddRemoveRule.java:969)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.lambda$processLeftTuples$1(AddRemoveRule.java:927)
	at deployment.my-full-bundle.ear//org.drools.core.common.DefaultFactHandle$SingleLinkedTuples.forEachLeftTuple(DefaultFactHandle.java:728)
	at deployment.my-full-bundle.ear//org.drools.core.common.DefaultFactHandle.forEachLeftTuple(DefaultFactHandle.java:924)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.processLeftTuples(AddRemoveRule.java:922)
	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.removeRule(AddRemoveRule.java:178)
	at deployment.my-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeTerminalNode(ReteooBuilder.java:191)
	at deployment.my-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeRules(ReteooBuilder.java:177)
	at deployment.my-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.removeObjectsGeneratedFromResource(KnowledgeBaseImpl.java:1735)
	at deployment.my-full-bundle.ear//org.drools.compiler.builder.impl.KnowledgeBuilderImpl.removeObjectsGeneratedFromResource(KnowledgeBuilderImpl.java:2151)
	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.removeResources(KieBaseUpdater.java:121)
	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.run(KieBaseUpdater.java:66)
	at deployment.my-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.enqueueModification(KnowledgeBaseImpl.java:745)
	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:267)
	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:237)
	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.updateToVersion(KieContainerImpl.java:195)
	at deployment.my-full-bundle.ear.rules-comp-impl.jar//com.my.rules.RuleKnowledgeBase.removeRuleFromKnowledgeBase(RuleKnowledgeBase.java:481)
{noformat}


  was:
NullPointerException is thrown in AddRemoveRule::iterateLeftTuple when *removing* a rule that contains *accumulate* with *max* function and a *source pattern that matches no object*. 

{noformat}
mnc_standalone               | Caused by: java.lang.NullPointerException
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1040)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1047)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.visitChild(AddRemoveRule.java:969)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.lambda$processLeftTuples$1(AddRemoveRule.java:927)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.common.DefaultFactHandle$SingleLinkedTuples.forEachLeftTuple(DefaultFactHandle.java:728)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.common.DefaultFactHandle.forEachLeftTuple(DefaultFactHandle.java:924)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.processLeftTuples(AddRemoveRule.java:922)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.removeRule(AddRemoveRule.java:178)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeTerminalNode(ReteooBuilder.java:191)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeRules(ReteooBuilder.java:177)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.removeObjectsGeneratedFromResource(KnowledgeBaseImpl.java:1735)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.builder.impl.KnowledgeBuilderImpl.removeObjectsGeneratedFromResource(KnowledgeBuilderImpl.java:2151)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.removeResources(KieBaseUpdater.java:121)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.run(KieBaseUpdater.java:66)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.enqueueModification(KnowledgeBaseImpl.java:745)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:267)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:237)
mnc_standalone               | 	at deployment.mnc-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.updateToVersion(KieContainerImpl.java:195)
mnc_standalone               | 	at deployment.my-full-bundle.ear.rules-comp-impl.jar//com.my.rules.RuleKnowledgeBase.removeRuleFromKnowledgeBase(RuleKnowledgeBase.java:481)
{noformat}




> accumulate causes NullPointerException
> --------------------------------------
>
>                 Key: DROOLS-4864
>                 URL: https://issues.redhat.com/browse/DROOLS-4864
>             Project: Drools
>          Issue Type: Bug
>    Affects Versions: 7.30.0.Final
>            Reporter: Vedran Prišćan
>            Assignee: Mario Fusco
>            Priority: Blocker
>              Labels: NullPointerException, accumulate
>
> NullPointerException is thrown in AddRemoveRule::iterateLeftTuple when *removing* a rule that contains *accumulate* with *max* function and a *source pattern that matches no object*. 
> {noformat}
> Caused by: java.lang.NullPointerException
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1040)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1047)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.iterateLeftTuple(AddRemoveRule.java:1053)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.visitChild(AddRemoveRule.java:969)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.lambda$processLeftTuples$1(AddRemoveRule.java:927)
> 	at deployment.my-full-bundle.ear//org.drools.core.common.DefaultFactHandle$SingleLinkedTuples.forEachLeftTuple(DefaultFactHandle.java:728)
> 	at deployment.my-full-bundle.ear//org.drools.core.common.DefaultFactHandle.forEachLeftTuple(DefaultFactHandle.java:924)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.processLeftTuples(AddRemoveRule.java:922)
> 	at deployment.my-full-bundle.ear//org.drools.core.phreak.AddRemoveRule.removeRule(AddRemoveRule.java:178)
> 	at deployment.my-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeTerminalNode(ReteooBuilder.java:191)
> 	at deployment.my-full-bundle.ear//org.drools.core.reteoo.ReteooBuilder.removeRules(ReteooBuilder.java:177)
> 	at deployment.my-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.removeObjectsGeneratedFromResource(KnowledgeBaseImpl.java:1735)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.builder.impl.KnowledgeBuilderImpl.removeObjectsGeneratedFromResource(KnowledgeBuilderImpl.java:2151)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.removeResources(KieBaseUpdater.java:121)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieBaseUpdater.run(KieBaseUpdater.java:66)
> 	at deployment.my-full-bundle.ear//org.drools.core.impl.KnowledgeBaseImpl.enqueueModification(KnowledgeBaseImpl.java:745)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:267)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.update(KieContainerImpl.java:237)
> 	at deployment.my-full-bundle.ear//org.drools.compiler.kie.builder.impl.KieContainerImpl.updateToVersion(KieContainerImpl.java:195)
> 	at deployment.my-full-bundle.ear.rules-comp-impl.jar//com.my.rules.RuleKnowledgeBase.removeRuleFromKnowledgeBase(RuleKnowledgeBase.java:481)
> {noformat}



--
This message was sent by Atlassian Jira
(v7.13.8#713008)



More information about the jboss-jira mailing list