piacenti opened a new issue, #6197:
URL: https://github.com/apache/incubator-kie-drools/issues/6197
I have a situation where when running RuleUnit X it evaluates a rule from
RuleUnit Y. When I run RuleUnit Y the same rule fires again so I end up with
some duplicate data. The project is large so it would be hard to share the
scenario. The generated LambdaPredicates `predicateInformation` method does
mention rules from both rule units as consumers of that logic which includes
the impacted rule. The odd thing is that the reverse doesn't happen. Evaluation
of RuleUnit Y for that specific rule doesn't cause an evaluation of the
RuleUnit X rule that uses that same logic. I've seen this issue for a few rules
at this point. I am having to use `from` statements in those rules to deal
with things I can't with OOPath, generally related to heavily dependent on
methods logic.
I'm using Drools version 9.44.0.Final. Also RuleUnit X and RuleUnit Y both
share the same model so they are implemented as a base class that contains all
the store fields and the individual units simply extend that base
```mermaid
flowchart TD
Base --> RuleUnitX
Base --> RuleUnitY
```
hence the very similar logic for a certain condition across units.
Edit:
The details around logic shared between rules of different units was just
speculation. However, I found a rule that is having the same behavior which
shares no logic with any other unit and yet it fires when evaluating a unit it
doesn't belong to. Could sharing DataStores between units cause this? I've
tried recreating them every time but the problem doesn't seem to change.
--
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]