apache / incubator-kie-drools

Drools is a rule engine, DMN engine and complex event processing (CEP) engine for Java.
http://www.drools.org
5.85k stars 2.49k forks source link

[new-parser] ClassCastException in test2AccumulatesWithOr #5949

Closed yurloc closed 4 months ago

yurloc commented 4 months ago

Parent issue

Failing tests

Rule code snippet

Too long.

Error output

### parse : ANTLR4_PARSER_ENABLED = true

java.lang.ClassCastException: class org.drools.base.reteoo.InitialFactImpl cannot be cast to class org.drools.compiler.integrationtests.AccumulateTest$MyPerson (org.drools.base.reteoo.InitialFactImpl and org.drools.compiler.integrationtests.AccumulateTest$MyPerson are in unnamed module of loader 'app')

    at org.drools.base.org.drools.compiler.integrationtests.AccumulateTest$MyPerson2129302349$getKids.getValue(Unknown Source)
    at org.drools.mvel.accessors.ClassFieldReader.getValue(ClassFieldReader.java:93)
    at org.drools.base.rule.Declaration.getValue(Declaration.java:238)
    at org.drools.mvel.expr.MVELCompilationUnit.updateFactory(MVELCompilationUnit.java:401)
    at org.drools.mvel.expr.MVELCompilationUnit.updateFactory(MVELCompilationUnit.java:331)
    at org.drools.mvel.expr.MVELAccumulator.accumulate(MVELAccumulator.java:159)
    at org.drools.base.rule.SingleAccumulate.accumulate(SingleAccumulate.java:94)
    at org.drools.core.phreak.PhreakAccumulateNode.addMatch(PhreakAccumulateNode.java:734)
    at org.drools.core.phreak.PhreakAccumulateNode.doRightInserts(PhreakAccumulateNode.java:255)
    at org.drools.core.phreak.PhreakAccumulateNode.doNode(PhreakAccumulateNode.java:104)
    at org.drools.core.phreak.RuleNetworkEvaluator.switchOnDoBetaNode(RuleNetworkEvaluator.java:599)
    at org.drools.core.phreak.RuleNetworkEvaluator.evalBetaNode(RuleNetworkEvaluator.java:566)
    at org.drools.core.phreak.RuleNetworkEvaluator.evalNode(RuleNetworkEvaluator.java:393)
    at org.drools.core.phreak.RuleNetworkEvaluator.innerEval(RuleNetworkEvaluator.java:353)
    at org.drools.core.phreak.RuleNetworkEvaluator.evalStackEntry(RuleNetworkEvaluator.java:251)
    at org.drools.core.phreak.RuleNetworkEvaluator.outerEval(RuleNetworkEvaluator.java:194)
    at org.drools.core.phreak.RuleNetworkEvaluator.evaluateNetwork(RuleNetworkEvaluator.java:147)
    at org.drools.core.phreak.RuleExecutor.evaluateNetwork(RuleExecutor.java:223)
    at org.drools.core.phreak.RuleExecutor.evaluateNetworkIfDirty(RuleExecutor.java:233)
    at org.drools.core.phreak.RuleExecutor.evaluateNetworkAndFire(RuleExecutor.java:80)
    at org.drools.core.concurrent.AbstractGroupEvaluator.evaluateAndFire(AbstractGroupEvaluator.java:48)
    at org.drools.kiesession.agenda.DefaultAgenda.fireLoop(DefaultAgenda.java:620)
    at org.drools.kiesession.agenda.DefaultAgenda.internalFireAllRules(DefaultAgenda.java:573)
    at org.drools.kiesession.agenda.DefaultAgenda.fireAllRules(DefaultAgenda.java:565)
    at org.drools.kiesession.session.StatefulKnowledgeSessionImpl.internalFireAllRules(StatefulKnowledgeSessionImpl.java:1093)
    at org.drools.kiesession.session.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1084)
    at org.drools.kiesession.session.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:1068)
    at org.drools.compiler.integrationtests.AccumulateTest.test2AccumulatesWithOr(AccumulateTest.java:2362)
tkobayas commented 4 months ago

~This will also be fixed by https://github.com/apache/incubator-kie-drools/issues/5949~

yurloc commented 4 months ago

This will also be fixed by #5949

@tkobayas You have just self-referenced this issue. Did you mean #5975?

tkobayas commented 4 months ago

Ah, sorry, that one : https://github.com/apache/incubator-kie-drools/pull/5975

tkobayas commented 4 months ago

Fixed by https://github.com/apache/incubator-kie-drools/pull/5975