[rules-users] Why this rule fires immediately ?

Mark Proctor mproctor at codehaus.org
Tue Oct 18 17:33:26 EDT 2011


Think about the logic you have written.

length(3) does not mean that it must have 3, but that it is the last 
three. So it could be 0, 1, 2 or 3 in length.

As soon s you have 1, 2, or 3 insertions if any one of those creates an 
average of > 30 the rule fires.

So you are inserting  a ZZZBean that creates an average, even if it's an 
average with a count of 1, over 30.

Mark
On 18/10/2011 07:20, eskomk wrote:
> Hi all,
>
> Here is the rule:
>
> CLIP -->
> rule "ZZZOver30" dialect "mvel"
>
> when
>      $tsb : ZZZBean($prof : profileID)
>      $avg : Number( doubleValue>  30 ) from accumulate(
>          ZZZBean( $tempr : temperature, profileID == $prof) over
> window:length( 3 ),
>          average( $tempr ) )
> then
>      // do something
> end
> CLIP<--
>
> The intention as you can see is that the rule fires if the average
> temperature rises above 30 degrees (of Celsius) in some measuring period.
> For testing purposes the rule takes a specific number of temperatures
> (window:length), in production environment the window will be time
> (window:time(Xm)).
>
> My question is, why this rule fires immediately after drools-expert is
> started ?
> Is there something wrong in syntax ?
>
> In startup there are obviously no objects of this kind (ZZZBean) in Working
> Set's memory, so it really shouldn't fire.
>
> We are running Drools ver. 5.1.1 as a web service on top of apache, and the
> facts (events) are fed to Drools via REST interface as XML.
>
> thanks and regards,
> Esko
> -----
> Esko Hujanen
> www.ebsolut.fi
>
>
> --
> View this message in context: http://drools.46999.n3.nabble.com/Why-this-rule-fires-immediately-tp3430427p3430427.html
> Sent from the Drools: User forum mailing list archive at Nabble.com.
> _______________________________________________
> rules-users mailing list
> rules-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/rules-users
>
>





More information about the rules-users mailing list