Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-1338

NPE happens in TupleSetsImpl.setNextTuple()

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Critical Critical
    • None
    • 6.4.0.Final
    • core engine
    • Hide

      rum mvn test with reproducer customer provided.
      (I can't attach it to the ticket as it contains customer's private data.)

      Show
      rum mvn test with reproducer customer provided. (I can't attach it to the ticket as it contains customer's private data.)
    • NEW
    • NEW

      In customer's performance test case, NPE happens in TupleSetsImpl.setNextTuple() with the following stack.

      java.lang.NullPointerException
      at org.drools.core.common.TupleSetsImpl.setNextTuple(TupleSetsImpl.java:352)
      at org.drools.core.common.TupleSetsImpl.removeInsert(TupleSetsImpl.java:168)
      at org.drools.core.phreak.RuleNetworkEvaluator.deleteChildLeftTuple(RuleNetworkEvaluator.java:729)
      at org.drools.core.phreak.RuleNetworkEvaluator.unlinkAndDeleteChildLeftTuple(RuleNetworkEvaluator.java:721)
      at org.drools.core.phreak.PhreakNotNode.doRightUpdates(PhreakNotNode.java:343)
      at org.drools.core.phreak.PhreakNotNode.doNode(PhreakNotNode.java:74)
      at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:524)
      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.outerEval(RuleNetworkEvaluator.java:136)
      at org.drools.core.phreak.AddRemoveRule.forceFlushLeftTuple(AddRemoveRule.java:692)
      at org.drools.core.phreak.AddRemoveRule.flushLeftTupleIfNecessary(AddRemoveRule.java:629)
      at org.drools.core.reteoo.NotNode.assertObject(NotNode.java:161)
      at org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
      at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
      at org.drools.core.reteoo.AlphaNode.assertObject(AlphaNode.java:134)
      at org.drools.core.reteoo.CompositeObjectSinkAdapter.doPropagateAssertObject(CompositeObjectSinkAdapter.java:494)
      at org.drools.core.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:384)
      at org.drools.core.reteoo.ObjectTypeNode.propagateAssert(ObjectTypeNode.java:304)
      at org.drools.core.phreak.PropagationEntry$Insert.execute(PropagationEntry.java:132)
      at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:82)
      at org.drools.core.phreak.SynchronizedPropagationList.flush(SynchronizedPropagationList.java:72)
      at org.drools.core.impl.StatefulKnowledgeSessionImpl.flushPropagations(StatefulKnowledgeSessionImpl.java:2053)
      at org.drools.core.phreak.RuleExecutor.fire(RuleExecutor.java:128)
      at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:74)
      at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:960)
      at org.drools.core.common.DefaultAgenda.fireLoop(DefaultAgenda.java:1303)
      at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1241)
      at org.drools.core.impl.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1336)
      at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1327)
      at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1308)

            mfusco@redhat.com Mario Fusco
            rhn-support-hmiura Hiroko Miura
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: