Rikkola opened a new issue, #7115:
URL: https://github.com/apache/incubator-kie/issues/7115
### Describe the bug
On Drools 10.x a rule guarded by exists ( A() and not B() ) stops firing
even though its condition is satisfied, when another rule in a different
package wraps the same leading conditional element in its own exists. The rule
is simply never activated: no build error, no warning, nothing in the logs. The
same rules fire correctly on 9.44.0.Final.
The whole reproducer is four DRL files. Types (repro.types):
```
package repro.types;
declare Seed end
declare SharedFact end
declare NegatedFact end
declare OtherFact end
declare Result end
```
A rule that derives SharedFact from the single input fact (repro.a):
```
package repro.a;
import repro.types.*;
rule "produce-shared-fact"
when
Seed()
then
insert(new SharedFact());
end
```
The rule that misbehaves (repro.b):
```
package repro.b;
import repro.types.*;
rule "subject"
when
exists ( SharedFact() and not NegatedFact() )
then
insert(new Result());
end
```
And a rule that never fires itself, but whose presence is what breaks the
one above (repro.c):
```
package repro.c;
import repro.types.*;
rule "sibling"
when
exists ( SharedFact() and OtherFact() )
then
end
```
A single Seed is inserted and fireAllRules() is called. Nothing in the rule
set ever produces NegatedFact or OtherFact, so after produce-shared-fact runs,
subject's condition is satisfied and it must fire. sibling correctly does not
fire, since OtherFact is absent.
On 9.44.0.Final it fires. On 10.0.0, 10.1.0 and 10.2.0 it does not.
This looks like the same family as
https://github.com/apache/incubator-kie/issues/7109
### Expected behavior
_No response_
### Actual behavior
_No response_
### How to Reproduce?
_No response_
### Output of `uname -a` or `ver`
_No response_
### Output of `java -version`
_No response_
### GraalVM version (if different from Java)
_No response_
### Kogito version or git rev (or at least Quarkus version if you are using
Kogito via Quarkus platform BOM)
_No response_
### Build tool (ie. output of `mvnw --version` or `gradlew --version`)
_No response_
### Additional information
_No response_
--
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]