1. The mathematical definition of partition includes all elements in a
set. https://en.wikipedia.org/wiki/Partition_of_a_set. IMO it is a bad
idea to break this as it is a well-defined idea.
2. Often this will happen due to error, and if we ignore it, it is very
hard to debug
3. If user wants to ignore a partition he can do it as post processing
On Fri, Feb 23, 2018 at 1:49 PM, Miyuru Dayarathna <miyu...@wso2.com> wrote:
> We had several offline discussions on the results returned by the
> following partition by range Siddhi query. This query simply drops events
> which are in the range 100-149 because those events do not fall into either
> small or large partitions. Ideally we should throw an error when parsing
> this Siddhi query since it does not include a partition for the (price>=100
> and price <150) case. However, currently Siddhi does not throw such error.
> We might think of such scenario as user may not really interested of the
> values between 100-149 and hence we should ignore that range. But it could
> lead to errors which are created unintentionally because user might
> actually forget to address the range 100-149. In such situation, throwing
> an error will make the user to address the range 100-149 properly.
> Therefore, we should throw an error if the user forget to cover the
> complete range of values in a partition by range Siddhi query. WDYT?
> define stream cseEventStreamOne (symbol string, price float,volume int);
> partition with (price<100 as 'small' or price>=150 as 'large' of
> begin @info(name = 'query1')
> from cseEventStreamOne#window.length(4)
> select symbol,sum(price) as price group by symbol insert into
> OutStockStream ;
> Miyuru Dayarathna
> Senior Technical Lead
> Mobile: +94713527783 <+94%2071%20352%207783>
> Blog: http://miyurublog.blogspot.com
Srinath Perera, Ph.D.
Architecture mailing list