That does sound like a problem, there should never be any behavioural
differences between the various performance configurations. We will fix
it for MR3. Could you open a JIRA for this please.
Mark
Shahad Ahmed wrote:
I have a question about alpha node sharing in release 4.0MR2. In the
API for class RuleBaseConfiguration there is a method to turn alpha
node sharing on and off. However, I get some odd behaviour when I turn
it off and I was hoping someone can help me understand what's going
on. I'll illustrate the behaviour with the two rules "First" and
Second" defined below. Both rules work with a class Customer,
which is a simple object with attribute age.
rule "First"
salience 10
when
c: Customer(age <= 10)
then
System.out.println("First - Customer age less than 10");
end
rule "Second"
salience 5
when
c: Customer(age <= 10)
then
System.out.println("Second - Customer age less than 10");
end
In the default case where alpha node sharing is on, I assert a
customer with age 5 and fireAllRules to get the following (hopefully,
correct) output:
First - Customer age less than 10
Second - Customer age less than 10
However, if I set the setShareAlphaNodes(false) to turn off alpha node
sharing I get the following output:
First - Customer age less than 10
Reading the manual, I had assumed that the alpha node sharing was just
an optimization, and switching it off may be inefficient, but would
give the same output for the example rules. Is this correct, or have I
missunderstood alpha node sharing. I've tried switching off alpha node
sharing both directly via the API method, and using the system
property option, but the behaviour is the same in both cases.
Regards
Shahad
------------------------------------------------------------------------
_______________________________________________
rules-users mailing list
rules-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users