[jboss-jira] [JBoss JIRA] Created: (JBRULES-3201) Sliding windows - Rule is being fired event when LHS is false

eyal rahamim (JIRA) jira-events at lists.jboss.org
Mon Sep 5 02:09:26 EDT 2011


Sliding windows - Rule is being fired event when LHS is false
-------------------------------------------------------------

                 Key: JBRULES-3201
                 URL: https://issues.jboss.org/browse/JBRULES-3201
             Project: Drools
          Issue Type: Bug
      Security Level: Public (Everyone can see)
          Components: drools-core (fusion)
    Affects Versions: 5.3.0.Beta1
         Environment: Linux
            Reporter: eyal rahamim
            Assignee: Mark Proctor


I have a rule that accumulate fact into sliding window.  When the count get to a certain threshold the rule should be activated.  After the window time is over, I expect that the rule will not fired anymore.  The counter of the fact is report as 0, but still the rule is being executed.


drl :

package com.sample;
import com.sample.WindowLength.FactTest;

declare FactTest
  @role( event )  
end
 
rule "A500 : test"
when
		// count devices per tag id
		$counter : Number( intValue >= 2 ) from accumulate (
			 $d : FactTest() over window:time(1m), count($d))
			
then
		System.out.println("A500: Rule is fired, count = " + $counter + " *********");
end


scenario:


ksession.insert(new FactTest());
ksession.fireAllRules();
ksession.insert(new FactTest());
ksession.fireAllRules();
ksession.insert(new FactTest());
ksession.fireAllRules();

SessionPseudoClock clock = ksession.getSessionClock();
clock.advanceTime(1, TimeUnit.MINUTES );

ksession.fireAllRules();


Result:
A500: Rule is fired, count = 2 *********
A500: Rule is fired, count = 3 *********
A500: Rule is fired, count = 0 *********





--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the jboss-jira mailing list