I'm try to solve simple task: 1. I want to correlate occurrence of 3 events A, B, C in case they happen in last 10 seconds.
Thus Siddhi supports only 2 join in query, I think that I'm not able to solve it. In documentation there's suggestion to use multiple queries and join them together like this
from A#window.time(10 sec) as a
join B#window.time(10 sec) as b on a.id == b.id
select a.id
insert into tempA
from tempA#window.time(10 sec) as a
join C#window.time(10 sec) as c on c.id == a.id
select *
insert into finalResult
But this produces wrong results, because data in stream tempA can live longer, time windows are not aligned.
Maybe I'm something missing. Any advice? Thanks