[rules-users] removeKnowledgePackage Call Hangs!!

malkhafaji moe.alkhafaji at medcpu.com
Thu May 13 18:18:07 EDT 2010


Again, there is probably no deadlock because if you look at the bold part of
the stack trace I posted in the first post (and again below), it seems like
it is throwing a NullPointerException and it is somehow killing the thread
without returning back to my application (from Drools). Here are my
findings:

1. It is throwing a NullPointerException (at
org.drools.reteoo.RuleTerminalNode.doRemove(RuleTerminalNode.java:369
).

2. The thread that threw the exception (Thread-15) check the logs below,
disappeared from my list on JConsole (it is not displayed in the list of
threads) which tells me that it was destroyed by an error that was later
sucked in by another code in the stack and the call never returned to my
application.
 
Exception in thread "Thread-15"
org.drools.runtime.rule.ConsequenceException: ru
le: MyRule 1.0
at org.drools.runtime.rule.impl.DefaultConsequenceExceptionHandler.handl
eException(DefaultConsequenceExceptionHandler.java:23)
        at
org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:981
)
        at
org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:918)
        at
org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1130)

        at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingM
emory.java:739)
        at
org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingM
emory.java:705)
        at
org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKno
wledgeSessionImpl.java:200)
        at com.medcpu.mpu.pp.engine.Drools.fireRules(Drools.java:459)
        at com.medcpu.mpu.MpuExecutor.executeRules(MpuExecutor.java:191)
        at
com.medcpu.mpu.MpuExecutor.initiateRuleExecution(MpuExecutor.java:431
)
        at com.medcpu.mpu.MpuExecutor.propertyChanged(MpuExecutor.java:147)
        at com.medcpu.mpu.MpuExecutor.run(MpuExecutor.java:498)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown
Source
)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.NullPointerException
        at
org.drools.reteoo.RuleTerminalNode.doRemove(RuleTerminalNode.java:369
)
        at org.drools.common.BaseNode.remove(BaseNode.java:95)
        at
org.drools.reteoo.ReteooBuilder.removeRule(ReteooBuilder.java:237)
        at
org.drools.reteoo.ReteooRuleBase.removeRule(ReteooRuleBase.java:413)
        at
org.drools.common.AbstractRuleBase.removeRule(AbstractRuleBase.java:7
29)
        at
org.drools.common.AbstractRuleBase.removePackage(AbstractRuleBase.jav
a:657)
        at
org.drools.impl.KnowledgeBaseImpl.removeKnowledgePackage(KnowledgeBas
eImpl.java:166)
        at
com.medcpu.mpu.pp.engine.Drools.removeKnowledgeBase(Drools.java:482)

-- 
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/removeKnowledgePackage-Call-Hangs-tp815616p815979.html
Sent from the Drools - User mailing list archive at Nabble.com.



More information about the rules-users mailing list