Hi all,

I have encountered an issue with existing Siddhi pattern unit test
case [1]. Consider the following Siddhi query and the inputs:

*Query:*

from e1=Stream1[price > 20] -> e2=Stream2[price > e1.price] and
e3=Stream2['IBM' == symbol]
select e1.symbol as symbol1, e2.price as price2, e3.price as price3
insert into OutputStream;

*Given input:*
stream1.send(new Object[]{"WSO2", 55.6f, 100});
stream2.send(new Object[]{"IBM", 72.7f, 100});
stream2.send(new Object[]{"IBM", 75.7f, 100});

*Actual Output:* "WSO2", 72.7f, 72.7f

*What I Expect:* "WSO2", 72.7f, *75.7f*

As you can see I expect two different events to satisfy the 'and' operation
in the pattern but in Siddhi, the 'and' condition is satisfied with a
single event. I have tested similar query in another CEP which outputs the
same output as I expect (i.e "WSO2", 72.7f, 75.7f).

Could you please clarify whether the current design decision makes sense or
not.


[1]
https://github.com/wso2/siddhi/blob/master/modules/siddhi-core/src/test/java/org/wso2/siddhi/core/query/pattern/LogicalPatternTestCase.java#L277
​

Thanks & Regards,
Gobinath

-- 
*Gobinath** Loganathan*
Graduate Student,
Electrical and Computer Engineering,
Western University.
Email  : [email protected]
Blog    : javahelps.com <http://www.javahelps.com/>
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to