Uploaded image for project: 'Drools'
  1. Drools
  2. DROOLS-5225

Constraint grouping fails with executable model

    XMLWordPrintable

Details

    • Bug
    • Resolution: Won't Do
    • Major
    • None
    • 7.35.0.Final
    • core engine
    • None
    • 2020 Week 13-15 (from Mar 23)
    • Hide

      run:

      mvn clean test
      

      on attached reproducer.

      Show
      run: mvn clean test on attached reproducer.
    • NEW
    • NEW

    Description

      Executable model rule compilation fails when trying to build a pattern using constraint grouping.

      Example of DRL that fails to compile:

          rule "TestBusiness"
          when $p : Pojo(departuretimedayofweek (== 1 || == 2 || == 7) )
          then
          end
      

      Error:

          java.lang.StackOverflowError
          	at java.base/java.util.LinkedList.unlink(LinkedList.java:215)
          	at java.base/java.util.LinkedList.remove(LinkedList.java:530)
          	at com.github.javaparser.ast.Node.setParentNode(Node.java:389)
          	at com.github.javaparser.ast.Node.setAsParentNodeOf(Node.java:403)
          	at com.github.javaparser.ast.expr.BinaryExpr.setLeft(BinaryExpr.java:174)
          	at com.github.javaparser.ast.expr.BinaryExpr.<init>(BinaryExpr.java:131)
          	at com.github.javaparser.ast.expr.BinaryExpr.<init>(BinaryExpr.java:122)
          	at org.drools.modelcompiler.builder.generator.DrlxParseUtil.trasformHalfBinaryToBinary(DrlxParseUtil.java:347)
          	at org.drools.modelcompiler.builder.generator.expressiontyper.ExpressionTyper.toTypedExpressionRec(ExpressionTyper.java:194)
          	at org.drools.modelcompiler.builder.generator.expressiontyper.ExpressionTyper.toTypedExpressionRec(ExpressionTyper.java:185)
          	at org.drools.modelcompiler.builder.generator.expressiontyper.ExpressionTyper.toTypedExpressionRec(ExpressionTyper.java:195)
          	at org.drools.modelcompiler.builder.generator.expressiontyper.ExpressionTyper.toTypedExpressionRec(ExpressionTyper.java:185)
           ...
      

      The example works fine when compiling without executable model.

      Attachments

        Activity

          People

            mfusco@redhat.com Mario Fusco
            mcasalino Matteo Casalino (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: