Uploaded image for project: 'JBRULES'
  1. JBRULES
  2. JBRULES-2882

NPE in EqualityEvaluatorsDefinition$StringEqualEvaluator.evaluateCachedLeft

This issue belongs to an archived project. You can view it, but you can't modify it. Learn more

    XMLWordPrintable

Details

    • Hide

      Create a rule that has joins such that we have a Cartesian product. insert objects into the session with partitioning enabled.

      Show
      Create a rule that has joins such that we have a Cartesian product. insert objects into the session with partitioning enabled.
    • Medium

    Description

      While working with rules with partitioning turned on.

      KnowledgeBaseConfiguration config = KnowledgeBaseFactory.newKnowledgeBaseConfiguration();
      config.setOption( MultithreadEvaluationOption.YES );
      conf.setOption( MaxThreadsOption.get(5) );

      Once we start inserting objects into the KSession, somewhere in the middle it throws this error:
      Partition task manager caught an unexpected exception: null
      Drools is capturing the exception to avoid thread death. Please report stack trace to development team.
      java.lang.NullPointerException
      at org.drools.base.evaluators.EqualityEvaluatorsDefinition$StringEqualEvaluator.evaluateCachedLeft(EqualityEvaluatorsDefinition.java:1984)
      at org.drools.rule.VariableRestriction.isAllowedCachedLeft(VariableRestriction.java:109)
      at org.drools.rule.VariableConstraint.isAllowedCachedLeft(VariableConstraint.java:115)
      at org.drools.common.SingleBetaConstraints.isAllowedCachedLeft(SingleBetaConstraints.java:142)
      at org.drools.reteoo.FromNode.checkConstraintsAndPropagate(FromNode.java:274)
      at org.drools.reteoo.FromNode.assertLeftTuple(FromNode.java:138)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.doPropagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:189)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.propagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:64)
      at org.drools.reteoo.JoinNode.assertLeftTuple(JoinNode.java:85)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.doPropagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:189)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.propagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:64)
      at org.drools.reteoo.FromNode.checkConstraintsAndPropagate(FromNode.java:279)
      at org.drools.reteoo.FromNode.assertLeftTuple(FromNode.java:138)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.doPropagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:189)
      at org.drools.reteoo.SingleLeftTupleSinkAdapter.propagateAssertLeftTuple(SingleLeftTupleSinkAdapter.java:64)
      at org.drools.reteoo.JoinNode.assertObject(JoinNode.java:128)
      at org.drools.reteoo.PartitionTaskManager$FactAssertAction.execute(PartitionTaskManager.java:274)
      at org.drools.reteoo.PartitionTaskManager$PartitionTask.run(PartitionTaskManager.java:118)
      at org.drools.concurrent.ExternalExecutorService$ObservableRunnable.run(ExternalExecutorService.java:453)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)

      Attachments

        Activity

          People

            etirelli@redhat.com Edson Tirelli
            ravi.bhatt Ravi Bhatt (Inactive)
            Archiver:
            rhn-support-ceverson Clark Everson

            Dates

              Created:
              Updated:
              Archived:

              PagerDuty