给定insert-into语句链,例如:
on GenericEvent insert into rule_A_stream select *; on rule_A_stream insert into rule_B_stream select * where condition1 insert into rule_C_stream select * where condition2; on rule_B_stream insert into rule_D_stream select * where condition3 insert into rule_E_stream select * where condition4; on rule_E_stream insert into rule_F_stream select * where condition4 insert into rule_G_stream select * where condition5;
一旦达到rule_E_stream,我们如何立即终止事件处理并返回结果? (终止意味着停止事件传播,因此不应该调用以下语句)
是否可以在Subscriber / Listener端停止处理?
create context Ctx initiated by InitEvent terminated by TerminateEvent
答案 0 :(得分:0)
@Drop注释(又名优先执行)终止。一个例子是:
@Drop @Priority(1) select * from rule_E_stream(drop_conditions_here_if_any)
@Priority(0) on rule_E_Stream ....
一般来说,听众不会在Esper中停止。但是听众可以通过他们自己的过滤器或转换来重新插入(也称为路由)事件。