Syntax error rarely occurs when running a rule concurrently on multiple KieSessions.

Solution Unverified - Updated -

Issue

Running a rule concurrently on multiple KieSessions, each of which is created and used on a separate thread, with executable model disabled rarely causes a syntax error though the rule is syntactically correct. In this case, you can encounter the errors like (*e1) or (*e2) below.

(*e1)

Caused by: [Error: not a statement, or badly formed structure]
[Near : {... TOSTRING(karaoke.dvd[$title].artist) != ....}]
                      ^
[Line: 1, Column: 10]

(*e2)

Caused by: [Error: unable to resolve method using strict-mode: java.lang.Object.artist()]
[Near : {... TOSTRING(karaoke.dvd[$title].artist) != null ....}]
                                          ^
[Line: 1, Column: 30]

Environment

  • Red Hat Decision Manager (RHDM)
    • 7

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In