Bug 1248661 - NullPointerException on LeftTupleIndexHashTable.remove()
NullPointerException on LeftTupleIndexHashTable.remove()
Status: CLOSED INSUFFICIENT_DATA
Product: JBoss BRMS Platform 6
Classification: JBoss
Component: BRE (Show other bugs)
6.1.0
Unspecified Unspecified
high Severity unspecified
: ---
: ---
Assigned To: Mario Fusco
Tibor Zimanyi
:
Depends On:
Blocks: 1249261
  Show dependency treegraph
 
Reported: 2015-07-30 10:25 EDT by Tibor Zimanyi
Modified: 2015-09-28 13:54 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1249261 (view as bug list)
Environment:
Last Closed: 2015-09-28 13:54:32 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Tibor Zimanyi 2015-07-30 10:25:59 EDT
Description of problem: 

LeftTupleIndexHashTable.remove() operation ended on NPE when called in test DinnerPartyPerformanceTest.solveModel_wedding01() from optaplanner community repo. I cannot reproduce it, so it's probably some specific case of add, remove operations combination. We can probably exclude concurrency from possible causes because optaplanner is single-threaded. I'll try to create a reproducer for this, but it's a tricky stuff, so it will take longer. Here's the stack trace: 

java.lang.NullPointerException: null
	at org.drools.core.util.index.LeftTupleIndexHashTable.remove(LeftTupleIndexHashTable.java:386)
	at org.drools.core.phreak.PhreakNotNode.doRightUpdates(PhreakNotNode.java:334)
	at org.drools.core.phreak.PhreakNotNode.doNode(PhreakNotNode.java:57)
	at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:526)
	at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:507)
	at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:319)
	at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:149)
	at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:106)
	at org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:161)
	at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:57)
	at org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:987)
	at org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1301)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1286)
	at org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1259)
	at org.optaplanner.core.impl.score.director.drools.DroolsScoreDirector.calculateScore(DroolsScoreDirector.java:87)
	at org.optaplanner.core.impl.solver.scope.DefaultSolverScope.calculateScore(DefaultSolverScope.java:110)
	at org.optaplanner.core.impl.phase.scope.AbstractPhaseScope.calculateScore(AbstractPhaseScope.java:123)
	at org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider.processMove(LocalSearchDecider.java:162)
	at org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider.doMove(LocalSearchDecider.java:149)
	at org.optaplanner.core.impl.localsearch.decider.LocalSearchDecider.decideNextStep(LocalSearchDecider.java:121)
	at org.optaplanner.core.impl.localsearch.DefaultLocalSearchPhase.solve(DefaultLocalSearchPhase.java:66)
	at org.optaplanner.core.impl.solver.DefaultSolver.runPhases(DefaultSolver.java:213)
	at org.optaplanner.core.impl.solver.DefaultSolver.solve(DefaultSolver.java:176)
	at org.optaplanner.examples.common.app.SolverPerformanceTest.solve(SolverPerformanceTest.java:79)
	at org.optaplanner.examples.common.app.SolverPerformanceTest.runSpeedTest(SolverPerformanceTest.java:63)
	at org.optaplanner.examples.common.app.SolverPerformanceTest.runSpeedTest(SolverPerformanceTest.java:58)
	at org.optaplanner.examples.dinnerparty.app.DinnerPartyPerformanceTest.solveModel_wedding01(DinnerPartyPerformanceTest.java:46)


Version-Release number of selected component (if applicable): 6.2.0.Final-redhat-9

Additional info: 

Test failed running on aix7 environment with ibm jdk 7
Comment 4 Mario Fusco 2015-09-28 13:54:32 EDT
We are still unable to reproduce the reported problem so I'm closing this issue for now. Feel free to reopen it if you can provide a reproducer.

Note You need to log in before you can comment on or make changes to this bug.