[jboss-jira] [JBoss JIRA] (DROOLS-4089) EvaluatedExpression not well resolved with JIT during race

vincent palau (Jira) issues at jboss.org
Thu May 30 05:22:00 EDT 2019


    [ https://issues.jboss.org/browse/DROOLS-4089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13740398#comment-13740398 ] 

vincent palau commented on DROOLS-4089:
---------------------------------------

Morning [~mfusco],
we created this repo as a reproducer:
{noformat}https://github.com/vp-stage/evaluatedexpressionandjit{noformat}

Executing the test WriterTest you'll see what are we facing. 
{noformat} Testclass: com.isolator.cases.WriterTest
 executing:$ mvn clean test
{noformat}




{noformat}
java.lang.RuntimeException: Unknown property 'nullOrEmpty' on class com.isolator.cases.Writer

	at org.drools.core.reteoo.PropertySpecificUtil.setPropertyOnMask(PropertySpecificUtil.java:105)
{noformat}

BTW: We also updated to latest version: 7.22.0.Final

I hope this is now useful for you :)

Thank you for your help!

Regards 

> EvaluatedExpression not well resolved  with JIT during race 
> ------------------------------------------------------------
>
>                 Key: DROOLS-4089
>                 URL: https://issues.jboss.org/browse/DROOLS-4089
>             Project: Drools
>          Issue Type: Bug
>          Components: core engine
>    Affects Versions: 7.20.0.Final
>            Reporter: vincent palau
>            Assignee: Mario Fusco
>            Priority: Major
>         Attachments: debugging-1.png
>
>
> 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 {noformat}ValidationUtils.isNullOrEmpty(interestedPartyNumber){noformat} ends up with this kind of error:
> {noformat}
> "java.lang.RuntimeException: Unknown property 'nullOrEmpty' on class tech.stage.utils.cwr.model.PublisherRecord"
> {noformat}
> 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
>  !debugging-1.png|full! 
> 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 {noformat}ConstraintJittingThresholdOption{noformat}
> Is there any chance to this bug fixed?
> Do you need more info?
> Thanks in advance for your support.
> {panel:title=Reproducer}
> https://github.com/vp-stage/evaluatedexpressionandjit
> {panel}



--
This message was sent by Atlassian Jira
(v7.12.1#712002)


More information about the jboss-jira mailing list