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

EvaluatedExpression not well resolved with JIT during race

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • None
    • 7.20.0.Final, 7.22.0.Final
    • core engine
    • None
    • 2019 Week 20-22
    • NEW
    • NEW

    Description

      We recently moved from Drools 7.9.0 to 7.20.

      Some errors started appearing in ours tests when calling static methods in LHS drools.
      This started happening when all tests were run simultaneously.

      It seems the mvel JIT compiler kicks in and it incorrectly evaluates the property name:
      A simple call to

      ValidationUtils.isNullOrEmpty(interestedPartyNumber)

      ends up with this kind of error:

      "java.lang.RuntimeException: Unknown property 'nullOrEmpty' on class tech.stage.utils.cwr.model.PublisherRecord"
      

      Debugging info:
      Related source-code: https://github.com/kiegroup/drools/blob/7.20.0.Final/drools-core/src/main/java/org/drools/core/rule/constraint/MvelConstraint.java#L489

      1) is the current evaluated property
      2) Should be the right property of WriterRecord
      3) Perhaps the expression which should be executed instead of invocations.get(0)

      We fixed that somehow disabling JIT with

      ConstraintJittingThresholdOption

      Is there any chance to this bug fixed?
      Do you need more info?

      Thanks in advance for your support.

      Attachments

        Issue Links

          Activity

            People

              mfusco@redhat.com Mario Fusco
              vp-stage vincent palau (Inactive)
              Tibor Zimányi Tibor Zimányi
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: