Bug 1248661 - NullPointerException on LeftTupleIndexHashTable.remove()
Summary: NullPointerException on LeftTupleIndexHashTable.remove()
Keywords:
Status: CLOSED INSUFFICIENT_DATA
Alias: None
Product: JBoss BRMS Platform 6
Classification: Retired
Component: BRE
Version: 6.1.0
Hardware: Unspecified
OS: Unspecified
high
unspecified
Target Milestone: ---
: ---
Assignee: Mario Fusco
QA Contact: Tibor Zimanyi
URL:
Whiteboard:
Depends On:
Blocks: 1249261
TreeView+ depends on / blocked
 
Reported: 2015-07-30 14:25 UTC by Tibor Zimanyi
Modified: 2015-09-28 17:54 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1249261 (view as bug list)
Environment:
Last Closed: 2015-09-28 17:54:32 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Tibor Zimanyi 2015-07-30 14:25:59 UTC
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 17:54:32 UTC
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.