[jboss-jira] [JBoss JIRA] Commented: (JBRULES-1572) sometimes getting ClassFieldExtractor error

Mark Proctor (JIRA) jira-events at lists.jboss.org
Fri May 2 23:32:18 EDT 2008


    [ http://jira.jboss.com/jira/browse/JBRULES-1572?page=comments#action_12411685 ] 
            
Mark Proctor commented on JBRULES-1572:
---------------------------------------

Actually thinking about this some more, I'm wondering if the error is not thread racing, but actually stale data. While we can only have one thread executing at the same time each thread is responsible for the fact propagation and activation creation and queueing. due to stale data in theory each thread could see out of sync versions of some of the data structures. Hence while your synch on the queue methods worked. Synchronising access to all data structures is not feasible, it would kill performance. I'm wondering if there is actually more deep seated problems here. It seems like the only real solution is the engine can only be executed in its Thread of creation, all other threads would message their changes into that thread. Will discuss this with the other developers, but its a 5.0.x thing, sorry.

> sometimes getting ClassFieldExtractor error
> -------------------------------------------
>
>                 Key: JBRULES-1572
>                 URL: http://jira.jboss.com/jira/browse/JBRULES-1572
>             Project: JBoss Drools
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 5.0.0-M1, 4.0.4, 4.0.7
>            Reporter: Ming Fang
>         Assigned To: Mark Proctor
>         Attachments: Foo.java, rule.drl, Test.java, Test.java
>
>
> Caused by: java.lang.NullPointerException
> 	at org.drools.base.com.ml.ax.ModelValue10285014$getModelValue.getDoubleValue(Unknown Source)
> 	at org.drools.base.ClassFieldExtractor.getDoubleValue(ClassFieldExtractor.java:191)
> 	at org.drools.rule.Declaration.getDoubleValue(Declaration.java:281)
> 	at com.ml.ax.drools.Rule_Quote_0ConsequenceInvoker.evaluate(Rule_Quote_0ConsequenceInvoker.java:17)
> 	at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:586)
> This only happens sometimes but it completely breaks my program.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the jboss-jira mailing list