On 29 March 2011 19:04, marc <marc.strabin@gmail.com> wrote:
Thanks,
The JBRULES-2825 seems to be a similar issue indeed !

The timer is necessary: When change the value of SimpleClock and I only do
an update (obj), without calling fireAllRules(). That way the rule doesn't
fire...  Is-it an other problem ??

If I do a update + fireAllRulles() when I change the timer, the rule_b fire
fine every 10 seconds. (without timer in the rule..)

Sorry, but I do not understand what you mean by any of these two scenarios.
-W




I think there is an open JIRA for a very similar issue:

JBRULES-2825 &quot;rule with timer and CE not keeps firing after turning
false&quot;

I have added these two rules as a comment.

However, the timer isn't necessary in this here case. Since the SimpleClock
fact is updated periodically, the engine will fire the rule as soon as
dateInMillisec exceeds the clock value in the Message fact.

Both rules work correctly, if written without the timer.

Actuallay, the timer doesn't have any effect (except wasting a few cycles).
If the LHS becomes true, it delays the first firing by 1s, and then the LHS
is made false by changing the Message object. This stops the timer! But
then, eventually, the LHS becomes true again, and *another timer *is
started, delays 1s, fires, and terminates.

-W



--
View this message in context: http://drools-java-rules-engine.46999.n3.nabble.com/The-update-function-inside-a-rule-tp2747484p2749346.html
Sent from the Drools - User mailing list archive at Nabble.com.
_______________________________________________
rules-users mailing list
rules-users@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/rules-users