yurloc opened a new issue, #5936:
URL: https://github.com/apache/incubator-kie-drools/issues/5936

   ## Parent issue
   - #5678 
   
   ## Failing tests
   - `org.drools.mvel.integrationtests.FirstOrderLogicTest#testCollectAfterOrCE`
   - `org.drools.mvel.integrationtests.Misc2Test#testMergeMVELDialect`
   
   ## Notes
   - The failing tests are affected only by the `lhsExpression` rule but don't 
forget to update also `lhsAndDef`.
   - Based on #5915, consider whether it's appropriate to also make the visitor 
resilient to incorrect LHS input and avoid throwing an NPE.
   
   ## Rule code snippet
   ```
   (eval(true) || eval(true))
   ```
   and
   ```
   (PersonHolder($addresses : person.addresses))
       &&
   (Address (street == \"AAA\") from $addresses)
   ```
   
   ## Error output
   ```
   ### parse : ANTLR4_PARSER_ENABLED = true
   line 23:20 no viable alternative at input '(eval(true) ||'
   line 23:20 mismatched input '||' expecting {'not', 'in', 'matches', 
'memberOf', 'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 
'coincides', 'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 
'overlaps', 'overlappedby', 'starts', 'startedby', '!.', 'instanceof', '(', 
')', '[', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', 
'+', '-', '*', '/', '&', '|', '^', '%', IDENTIFIER}
   18:37:49.013 [main] ERROR o.d.d.parser.antlr4.DRLParserWrapper.parse:77 - 
Exception while creating PackageDescr
   java.lang.NullPointerException: Cannot read field "start" because "ctx" is 
null
        at 
org.drools.drl.parser.antlr4.Antlr4ParserStringUtils.getTokenTextPreservingWhitespace(Antlr4ParserStringUtils.java:65)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitRuledef(DRLVisitorImpl.java:362)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitRuledef(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$RuledefContext.accept(DRLParser.java:1667)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDescrChildren(DRLVisitorImpl.java:1089)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDrlStatementdef(DRLVisitorImpl.java:166)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDrlStatementdef(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$DrlStatementdefContext.accept(DRLParser.java:526)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDescrChildren(DRLVisitorImpl.java:1089)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitCompilationUnit(DRLVisitorImpl.java:102)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitCompilationUnit(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$CompilationUnitContext.accept(DRLParser.java:436)
        at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:18)
        at 
org.drools.drl.parser.antlr4.DRLParserHelper.compilationUnitContext2PackageDescr(DRLParserHelper.java:91)
        at 
org.drools.drl.parser.antlr4.DRLParserWrapper.parse(DRLParserWrapper.java:75)
        at 
org.drools.drl.parser.antlr4.DRLParserWrapper.parse(DRLParserWrapper.java:55)
        at org.drools.drl.parser.DrlParser.lambda$parse$2(DrlParser.java:191)
        at 
org.drools.drl.parser.DrlParser.compileWithAntlr4Parser(DrlParser.java:204)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:191)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:179)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:168)
        at 
org.drools.compiler.builder.impl.resources.DrlResourceHandler.process(DrlResourceHandler.java:55)
        at 
org.drools.compiler.builder.impl.PackageDescrBuilder.buildResource(PackageDescrBuilder.java:73)
        at 
org.drools.compiler.builder.impl.PackageDescrBuilder.build(PackageDescrBuilder.java:51)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackageDescr(CompositeKnowledgeBuilderImpl.java:173)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:116)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:109)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:274)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:220)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:84)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:285)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:251)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:208)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:149)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:134)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromResources(KieUtil.java:121)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromClasspathResources(KieUtil.java:187)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromClasspathResources(KieBaseUtil.java:57)
        at 
org.drools.mvel.integrationtests.FirstOrderLogicTest.testCollectAfterOrCE(FirstOrderLogicTest.java:1143)
   18:37:49.014 [main] ERROR 
o.d.c.k.b.impl.AbstractKieProject.buildKnowledgePackages:280 - Unable to build 
KieBaseModel:KieBaseModelName
   [23,20]: no viable alternative at input '(eval(true) ||'
   [23,20]: mismatched input '||' expecting {'not', 'in', 'matches', 
'memberOf', 'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 
'coincides', 'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 
'overlaps', 'overlappedby', 'starts', 'startedby', '!.', 'instanceof', '(', 
')', '[', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', 
'+', '-', '*', '/', '&', '|', '^', '%', IDENTIFIER}
   [0,0]: Cannot read field "start" because "ctx" is null
   [0,0]: Parser returned a null Package
   
   18:37:49.014 [main] ERROR 
o.d.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem:165 - 
KieBuilder errors: [Message [id=1, kieBase=KieBaseModelName, level=ERROR, 
path=test_OrCEFollowedByCollect.drl, line=23, column=0
      text=no viable alternative at input '(eval(true) ||'], Message [id=2, 
kieBase=KieBaseModelName, level=ERROR, path=test_OrCEFollowedByCollect.drl, 
line=23, column=0
      text=mismatched input '||' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '!.', 'instanceof', '(', ')', '[', '.', 
'>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', '-', '*', 
'/', '&', '|', '^', '%', IDENTIFIER}], Message [id=3, kieBase=KieBaseModelName, 
level=ERROR, path=test_OrCEFollowedByCollect.drl, line=0, column=0
      text=Cannot read field "start" because "ctx" is null], Message [id=4, 
kieBase=KieBaseModelName, level=ERROR, path=test_OrCEFollowedByCollect.drl, 
line=0, column=0
      text=Parser returned a null Package]]
   
   java.lang.AssertionError: [[Message [id=1, kieBase=KieBaseModelName, 
level=ERROR, path=test_OrCEFollowedByCollect.drl, line=23, column=0
      text=no viable alternative at input '(eval(true) ||'], Message [id=2, 
kieBase=KieBaseModelName, level=ERROR, path=test_OrCEFollowedByCollect.drl, 
line=23, column=0
      text=mismatched input '||' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '!.', 'instanceof', '(', ')', '[', '.', 
'>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', '-', '*', 
'/', '&', '|', '^', '%', IDENTIFIER}], Message [id=3, kieBase=KieBaseModelName, 
level=ERROR, path=test_OrCEFollowedByCollect.drl, line=0, column=0
      text=Cannot read field "start" because "ctx" is null], Message [id=4, 
kieBase=KieBaseModelName, level=ERROR, path=test_OrCEFollowedByCollect.drl, 
line=0, column=0
      text=Parser returned a null Package]]] 
   Expecting empty but was: [Message [id=1, kieBase=KieBaseModelName, 
level=ERROR, path=test_OrCEFollowedByCollect.drl, line=23, column=0
      text=no viable alternative at input '(eval(true) ||'],
       Message [id=2, kieBase=KieBaseModelName, level=ERROR, 
path=test_OrCEFollowedByCollect.drl, line=23, column=0
      text=mismatched input '||' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '!.', 'instanceof', '(', ')', '[', '.', 
'>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', '-', '*', 
'/', '&', '|', '^', '%', IDENTIFIER}],
       Message [id=3, kieBase=KieBaseModelName, level=ERROR, 
path=test_OrCEFollowedByCollect.drl, line=0, column=0
      text=Cannot read field "start" because "ctx" is null],
       Message [id=4, kieBase=KieBaseModelName, level=ERROR, 
path=test_OrCEFollowedByCollect.drl, line=0, column=0
      text=Parser returned a null Package]]
   
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:169)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:134)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromResources(KieUtil.java:121)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromClasspathResources(KieUtil.java:187)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromClasspathResources(KieBaseUtil.java:57)
        at 
org.drools.mvel.integrationtests.FirstOrderLogicTest.testCollectAfterOrCE(FirstOrderLogicTest.java:1143)
   ```
   
   and 
   
   ```
   ### parse : ANTLR4_PARSER_ENABLED = true
   line 6:12 mismatched input '&&' expecting {'not', 'in', 'matches', 
'memberOf', 'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 
'coincides', 'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 
'overlaps', 'overlappedby', 'starts', 'startedby', '#', '!.', 'instanceof', 
'(', ')', '[', ',', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', 
'++', '--', '+', '-', '*', '/', '&', '|', '^', '%', IDENTIFIER}
   18:37:56.443 [main] ERROR o.d.d.parser.antlr4.DRLParserWrapper.parse:77 - 
Exception while creating PackageDescr
   java.lang.NullPointerException: Cannot read field "start" because "ctx" is 
null
        at 
org.drools.drl.parser.antlr4.Antlr4ParserStringUtils.getTokenTextPreservingWhitespace(Antlr4ParserStringUtils.java:65)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitRuledef(DRLVisitorImpl.java:362)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitRuledef(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$RuledefContext.accept(DRLParser.java:1667)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDescrChildren(DRLVisitorImpl.java:1089)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDrlStatementdef(DRLVisitorImpl.java:166)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDrlStatementdef(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$DrlStatementdefContext.accept(DRLParser.java:526)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitDescrChildren(DRLVisitorImpl.java:1089)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitCompilationUnit(DRLVisitorImpl.java:102)
        at 
org.drools.drl.parser.antlr4.DRLVisitorImpl.visitCompilationUnit(DRLVisitorImpl.java:83)
        at 
org.drools.drl.parser.antlr4.DRLParser$CompilationUnitContext.accept(DRLParser.java:436)
        at 
org.antlr.v4.runtime.tree.AbstractParseTreeVisitor.visit(AbstractParseTreeVisitor.java:18)
        at 
org.drools.drl.parser.antlr4.DRLParserHelper.compilationUnitContext2PackageDescr(DRLParserHelper.java:91)
        at 
org.drools.drl.parser.antlr4.DRLParserWrapper.parse(DRLParserWrapper.java:75)
        at 
org.drools.drl.parser.antlr4.DRLParserWrapper.parse(DRLParserWrapper.java:55)
        at org.drools.drl.parser.DrlParser.lambda$parse$2(DrlParser.java:191)
        at 
org.drools.drl.parser.DrlParser.compileWithAntlr4Parser(DrlParser.java:204)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:191)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:179)
        at org.drools.drl.parser.DrlParser.parse(DrlParser.java:168)
        at 
org.drools.compiler.builder.impl.resources.DrlResourceHandler.process(DrlResourceHandler.java:55)
        at 
org.drools.compiler.builder.impl.PackageDescrBuilder.buildResource(PackageDescrBuilder.java:73)
        at 
org.drools.compiler.builder.impl.PackageDescrBuilder.build(PackageDescrBuilder.java:51)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.buildPackageDescr(CompositeKnowledgeBuilderImpl.java:173)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:116)
        at 
org.drools.compiler.builder.impl.CompositeKnowledgeBuilderImpl.build(CompositeKnowledgeBuilderImpl.java:109)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:274)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.buildKnowledgePackages(AbstractKieProject.java:220)
        at 
org.drools.compiler.kie.builder.impl.AbstractKieProject.verify(AbstractKieProject.java:84)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildKieProject(KieBuilderImpl.java:285)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:251)
        at 
org.drools.compiler.kie.builder.impl.KieBuilderImpl.buildAll(KieBuilderImpl.java:208)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:149)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:134)
        at 
org.drools.testcoverage.common.util.KieUtil.buildAndInstallKieModuleIntoRepo(KieUtil.java:78)
        at 
org.drools.testcoverage.common.util.KieUtil.buildAndInstallKieModuleIntoRepo(KieUtil.java:72)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieModuleFromResources(KieUtil.java:249)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieModuleFromResources(KieUtil.java:238)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromKieModuleFromResources(KieBaseUtil.java:102)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromKieModuleFromDrl(KieBaseUtil.java:115)
        at 
org.drools.mvel.integrationtests.Misc2Test.testMergeMVELDialect(Misc2Test.java:8691)
   18:37:56.444 [main] ERROR 
o.d.c.k.b.impl.AbstractKieProject.buildKnowledgePackages:280 - Unable to build 
KieBaseModel:KieBaseModelName
   [6,12]: mismatched input '&&' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '#', '!.', 'instanceof', '(', ')', '[', 
',', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', 
'-', '*', '/', '&', '|', '^', '%', IDENTIFIER}
   [0,0]: Cannot read field "start" because "ctx" is null
   [0,0]: Parser returned a null Package
   
   18:37:56.444 [main] ERROR 
o.d.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem:165 - 
KieBuilder errors: [Message [id=1, kieBase=KieBaseModelName, level=ERROR, 
path=rules1.drl, line=6, column=0
      text=mismatched input '&&' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '#', '!.', 'instanceof', '(', ')', '[', 
',', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', 
'-', '*', '/', '&', '|', '^', '%', IDENTIFIER}], Message [id=2, 
kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, line=0, column=0
      text=Cannot read field "start" because "ctx" is null], Message [id=3, 
kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, line=0, column=0
      text=Parser returned a null Package]]
   
   java.lang.AssertionError: [[Message [id=1, kieBase=KieBaseModelName, 
level=ERROR, path=rules1.drl, line=6, column=0
      text=mismatched input '&&' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '#', '!.', 'instanceof', '(', ')', '[', 
',', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', 
'-', '*', '/', '&', '|', '^', '%', IDENTIFIER}], Message [id=2, 
kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, line=0, column=0
      text=Cannot read field "start" because "ctx" is null], Message [id=3, 
kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, line=0, column=0
      text=Parser returned a null Package]]] 
   Expecting empty but was: [Message [id=1, kieBase=KieBaseModelName, 
level=ERROR, path=rules1.drl, line=6, column=0
      text=mismatched input '&&' expecting {'not', 'in', 'matches', 'memberOf', 
'contains', 'excludes', 'soundslike', 'str', 'after', 'before', 'coincides', 
'during', 'includes', 'finishes', 'finishedby', 'meets', 'metby', 'overlaps', 
'overlappedby', 'starts', 'startedby', '#', '!.', 'instanceof', '(', ')', '[', 
',', '.', '>', '<', '~', '==', '<=', '>=', '!=', '&&', '||', '++', '--', '+', 
'-', '*', '/', '&', '|', '^', '%', IDENTIFIER}],
       Message [id=2, kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, 
line=0, column=0
      text=Cannot read field "start" because "ctx" is null],
       Message [id=3, kieBase=KieBaseModelName, level=ERROR, path=rules1.drl, 
line=0, column=0
      text=Parser returned a null Package]]
   
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:169)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieBuilderFromKieFileSystem(KieUtil.java:134)
        at 
org.drools.testcoverage.common.util.KieUtil.buildAndInstallKieModuleIntoRepo(KieUtil.java:78)
        at 
org.drools.testcoverage.common.util.KieUtil.buildAndInstallKieModuleIntoRepo(KieUtil.java:72)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieModuleFromResources(KieUtil.java:249)
        at 
org.drools.testcoverage.common.util.KieUtil.getKieModuleFromResources(KieUtil.java:238)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromKieModuleFromResources(KieBaseUtil.java:102)
        at 
org.drools.testcoverage.common.util.KieBaseUtil.getKieBaseFromKieModuleFromDrl(KieBaseUtil.java:115)
        at 
org.drools.mvel.integrationtests.Misc2Test.testMergeMVELDialect(Misc2Test.java:8691)
   ```


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to