Here is my test project:  DroolsTest.zip
<http://drools.46999.n3.nabble.com/file/n4027890/DroolsTest.zip>  

Change the TOTAL_OBJECTS member of Main.java to see the impact of having a
large number of objects:
 * If you set it to 1K, everything should work fine.
 * If you set it to 10K, it will NPE the first time but succeed afterward.
 * If you set it to 100K, it will NPE every time.

Thank you!

Joseph


Davide Sottara wrote
> Could you post the full test case (rules + java)?
> Thanks
> Davide
> 
> On 01/28/2014 05:10 PM, jhusby wrote:
>> I'm trying to stress-test Drools to see what its limits are, and I
>> stumbled
>> across a NPE when I have a large amount of facts in a stateful
>> knowledgebase:
>>
>> java.lang.NullPointerException
>>      at
>> org.drools.core.phreak.PhreakTimerNode.doPropagateChildLeftTuple(PhreakTimerNode.java:355)
>>      at
>> org.drools.core.phreak.PhreakTimerNode.doPropagateChildLeftTuples(PhreakTimerNode.java:325)
>>      at
>> org.drools.core.phreak.PhreakTimerNode.doNode(PhreakTimerNode.java:72)
>>      at
>> org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:357)
>>      at
>> org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:161)
>>      at
>> org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:116)
>>      at
>> org.drools.core.phreak.RuleExecutor.reEvaluateNetwork(RuleExecutor.java:200)
>>      at
>> org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:67)
>>      at
>> org.drools.core.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:935)
>>      at
>> org.drools.core.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1200)
>>      at
>> org.drools.core.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:957)
>>      at
>> org.drools.core.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:931)
>>      at
>> org.drools.core.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:256)
>>
>> I have a little program that creates, populates, fires, and destroys a
>> session repeatedly.  With 10K objects in the knowledge base, I get the
>> NPE
>> the first time I loop through my program, but not subsequently (probably
>> because by the subsequent executions things have been cached).  With 100K
>> objects, I get the exception most times.  With 1M objects, I get the NPE
>> every time.
>>
>> Am I doing anything wrong or is it simply taking so long to execute all
>> the
>> rules that something times out?  Is there a timeout param I could set?
>>
>> Thank you!
>>
>> Joseph





--
View this message in context: 
http://drools.46999.n3.nabble.com/Null-Pointer-Exception-with-10K-kBase-objects-tp4027887p4027890.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users

Reply via email to