[rules-users] Why this rule fires immediately ?

eskomk esko.hujanen at ebsolut.fi
Tue Oct 18 02:20:27 EDT 2011


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.



More information about the rules-users mailing list