Слюни правила выполнения зависает - PullRequest
0 голосов
/ 01 октября 2019

Следующее правило вешает слюни:

rule "Sound the alarm in case temperature rises above threshold"
when
    $m1 : TempReading( temp >= 35 )
    Number( doubleValue >= 2 ) from accumulate(
        TempReading( temp >= 35, this after[0s, 1m] $m1 ),
            init( double total = 0; ),
            action( total += 1; ),
            reverse( total -= 1; ),
            result( total ) ) 
then
    System.out.println("Temp over max")
end

У меня есть операторы журнала в ObjectXXXEvents, которые все тесно зарегистрированы. Это выглядит так:

Object inserted 
com.sample.DroolsTest$TempReading@6bab2585
Object inserted 
com.sample.DroolsTest$TempReading@a486d78
Object inserted 
com.sample.DroolsTest$TempReading@cdc3aae
Object inserted 
com.sample.DroolsTest$TempReading@7ef2d7a6
Object inserted 
com.sample.DroolsTest$TempReading@5dcbb60

У меня есть операторы журнала для matchCreated, matchCancelled, beforeMatchFired и afterMatchFired, и ни один из них не регистрируется.

Если я изменяю clockType на psuedo, он выходитно правило не срабатывает.

Что дает?

...