[jboss-jira] [JBoss JIRA] Commented: (JBRULES-1519) Regression on alpha composite constraints

Edson Tirelli (JIRA) jira-events at lists.jboss.org
Thu Mar 20 08:12:51 EDT 2008


    [ http://jira.jboss.com/jira/browse/JBRULES-1519?page=comments#action_12403795 ] 
            
Edson Tirelli commented on JBRULES-1519:
----------------------------------------

To reproduce, I used the following rule:

rule "test alpha composite constraints"
when
    Person( eval( age == 25 ) || ( eval( name.equals( "bob" ) ) && eval( age == 30 ) ) )
then
    results.add( "OK" );
end



> Regression on alpha composite constraints
> -----------------------------------------
>
>                 Key: JBRULES-1519
>                 URL: http://jira.jboss.com/jira/browse/JBRULES-1519
>             Project: JBoss Drools
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: Reteoo
>    Affects Versions: 4.0.5
>            Reporter: Edson Tirelli
>         Assigned To: Edson Tirelli
>             Fix For: 4.0.6, 5.0.0-M1
>
>
> Markus Helbig <mhelbig81 at googlemail.com> 	para rules-users
> Dear Drools users,
> i tried to replace Drools 4.0.4 with 4.0.5 and know i get the following errors:
> [20.03.08 09:21:24:100 CET] 00000036 SystemOut     O 2008-03-20
> 09:21:24 XXX XXXX ERROR Exception executing predicate
> org.drools.base.mvel.MVELPredicateExpression at 329c329c -
> org.drools.RuntimeDroolsException: Exception executing predicate
> org.drools.base.mvel.MVELPredicateExpression at 329c329c
> org.drools.RuntimeDroolsException: Exception executing predicate
> org.drools.base.mvel.MVELPredicateExpression at 329c329c
>       at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:216)
>       at org.drools.rule.OrConstraint.isAllowed(OrConstraint.java:50)
>       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.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
>       at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
>       at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
>       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:153)
>       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:915)
>       at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:887)
>       at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:688)
> Caused by:
> java.lang.ClassCastException:
> org/drools/rule/AbstractCompositeConstraint$MultiFieldConstraintContextEntry
> incompatible with
> org/drools/rule/PredicateConstraint$PredicateContextEntry
>       at org.drools.rule.PredicateConstraint.isAllowed(PredicateConstraint.java:209)
>       at org.drools.rule.OrConstraint.isAllowed(OrConstraint.java:50)
>       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.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
>       at org.drools.reteoo.AlphaNode.assertObject(AlphaNode.java:145)
>       at org.drools.reteoo.SingleObjectSinkAdapter.propagateAssertObject(SingleObjectSinkAdapter.java:22)
>       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:153)
>       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:915)
>       at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:887)
>       at org.drools.common.AbstractWorkingMemory.insert(AbstractWorkingMemory.java:688)
> What do i have to change? Do i miss sth important?
> Cheers
> Markus

-- 
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