[jboss-jira] [JBoss JIRA] Updated: (JBRULES-1751) Issue in Drools 4.0.7 when run in Multithreaded environment

Edson Tirelli (JIRA) jira-events at lists.jboss.org
Wed Nov 26 10:50:50 EST 2008


     [ https://jira.jboss.org/jira/browse/JBRULES-1751?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Edson Tirelli updated JBRULES-1751:
-----------------------------------

    Fix Version/s: 5.0.0.CR1
                       (was: 5.0.0.M3)


> Issue in Drools 4.0.7 when run in Multithreaded environment
> -----------------------------------------------------------
>
>                 Key: JBRULES-1751
>                 URL: https://jira.jboss.org/jira/browse/JBRULES-1751
>             Project: JBoss Drools
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>    Affects Versions: 4.0.7
>         Environment: OS AIX 1.5
>            Reporter: Sitaraman Balaraman
>            Assignee: Edson Tirelli
>             Fix For: 5.0.0.CR1
>
>
> Hi 
> We have a batch program(Informatica mapping) which uses Jars taken from an application which uses JBoss Drools 4.0.7 and MVEL 1.3.7. The informatica Integration service runs in AIX Machine with JRE Version 1.5. The batch program process millions of records which in turn calls the Drools API. To improve the performance, we tried running our informatica process in a multi threaded environment(4 threads). While running we got the following exception for every record that we process(across all the threads).
> : Exception executing predicate eval( $terDate.before(ExtDateTimeUtils.getDate("01/01/1900")) )
> 	at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:216)
> 	at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:137)
> 	at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:318)
> 	at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
> 	at org.drools.reteoo.CompositeObjectSinkAdapter.propagateAssertObject(CompositeObjectSinkAdapter.java:318)
> 	at org.drools.reteoo.ObjectTypeNode.assertObject(ObjectTypeNode.java:162)
> 	at org.drools.reteoo.Rete.assertObject(Rete.java:175)
> 	at org.drools.reteoo.ReteooRuleBase.assertObject(ReteooRuleBase.java:192)
> 	at org.drools.reteoo.ReteooWorkingMemory.doInsert(ReteooWorkingMemory.java:71)
> 	at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:911)
> 	at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:883)
> 	at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:684)
> 	at org.drools.reteoo.ReteooStatelessSession.execute(ReteooStatelessSession.java:160)
> 	at com.wellpoint.eps.epds.business.framework.rules.jbrules.JBRulesExecutor.fireAllRules(JBRulesExecutor.java:85)
> 	at com.wellpoint.eps.epds.business.framework.validation.BaseHandlerImpl.validateInternal(BaseHandlerImpl.java:141)
> 	at com.wellpoint.eps.epds.business.framework.validation.BaseHandlerImpl.validateInternal(BaseHandlerImpl.java:75)
> 	at com.wellpoint.eps.epds.business.framework.validation.AbstractBusinessRuleHandler.validate(AbstractBusinessRuleHandler.java:43)
> 	at com.wellpoint.eps.epds.business.application.validation.ProviderContractBusinessRuleHandler.validate(ProviderContractBusinessRuleHandler.java:43)
> 	at com.wellpoint.eps.epds.business.framework.service.DefaultRuleValidationServiceImpl.applyBusinessRules(DefaultRuleValidationServiceImpl.java:284)
> 	at com.eps.epds.api.validation.ValidationServiceDeligator$DefaultValidationServiceImpl.validate(ValidationServiceDeligator.java:181)
> 	at com.informatica.powercenter.server.jtx.JTXPartitionDriverImplGen.inputTransaction(JTXPartitionDriverImplGen.java:1414)
> Caused by: org.mvel.CompileException: cannot invoke method
> 	at org.mvel.optimizers.impl.refl.MethodAccessor.getValue(MethodAccessor.java:54)
> 	at org.mvel.optimizers.impl.refl.VariableAccessor.getValue(VariableAccessor.java:39)
> 	at org.mvel.ast.VariableDeepPropertyNode.getReducedValueAccelerated(VariableDeepPropertyNode.java:22)
> 	at org.mvel.ast.PropertyASTNode.getReducedValueAccelerated(PropertyASTNode.java:21)
> 	at org.mvel.MVELRuntime.execute(MVELRuntime.java:90)
> 	at org.mvel.CompiledExpression.getValue(CompiledExpression.java:111)
> 	at org.mvel.MVEL.executeExpression(MVEL.java:235)
> 	at org.drools.base.mvel.MVELPredicateExpression.evaluate(MVELPredicateExpression.java:45)
> 	at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:209)
> 	... 20 more
> Caused by: java.lang.reflect.InvocationTargetException
> 	at sun.reflect.GeneratedMethodAccessor45.invoke(Unknown Source)
> 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> 	at java.lang.reflect.Method.invoke(Method.java:615)
> 	at org.mvel.optimizers.impl.refl.MethodAccessor.getValue(MethodAccessor.java:46)
> 	... 28 more
> Caused by: java.lang.NullPointerException
> 	at java.util.Date.getMillisOf(Date.java:953)
> 	at java.util.Date.before(Date.java:912)
> 	... 32 more
> ].
> Could you please let me know if this is a known issue or is there any workaround for this problem?
> Thanks
> Sitaraman

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

        



More information about the jboss-jira mailing list