Используйте переменную Esper для увеличения и сжатия временного окна

#esper

#esper

Вопрос:

У меня есть временное окно и переменная, которая является параметром временного окна.

 CREATE VARIABLE int expireSecs = 10;
SELECT * FROM Event#time(expireSecs sec);
  

В коде, который я вызываю, чтобы установить значение expireSecs.

 epRuntime.setVariableValue("expireSecs", 5);
  

Кажется, что временное окно не увеличивается с 10 секунд до 5 секунд.

Ответ №1:

Окно expression и окно expression-batch-window являются единственными окнами, которые постоянно переоценивают выражения параметров. Временное окно не выполняется повторно. Это есть здесь в документации. В описании expression-window есть пример таким образом.

 select * from MyEvent#expr(oldest_timestamp > newest_timestamp - (1000*expirySec))