Hi Dominik, I think you are hitting a bug. The greedy quantifier does not work well if applied for the last element of a pattern. There is a jira issue to improve support for greedy qualifier[1].
You could work it around with adding an additional state at the end. E.g. :
Pattern.begin[AccelVector](EventPatternName,
AfterMatchSkipStrategy.skipPastLastEvent())
.where(_.data() > Threshold)
.oneOrMore
.greedy
.consecutive()
.next("b")
.where(BooleanConditions.true())
.within(Time.minutes(1))
Best,
Dawid
[1] https://issues.apache.org/jira/browse/FLINK-10587
On 25/03/2020 10:07, Dominik Wosiński wrote:
> P.S.
> So now my pattern looks like this:
>
> Pattern.begin[AccelVector](EventPatternName,
> AfterMatchSkipStrategy.skipPastLastEvent())
> .where(_.data() > Threshold)
> .oneOrMore
> .greedy
> .consecutive()
> .within(Time.minutes(1))
>
>
> śr., 25 mar 2020 o 10:03 Dominik Wosiński <[email protected]> napisał(a):
>
>> Hey, thanks for the answer.
>>
>> But if I add the *AfterMatchSkipStrategy* it simply seems to emit event
>> by event so in the case described above it does emit: [400], [500]
>> Shouldn't the *greedy* quantifier guarantee that this will be matched as
>> many times as possible thus creating [400, 500] ??
>>
>> Thanks again.
>> Best Regards,
>> Dom.
>>
signature.asc
Description: OpenPGP digital signature
