Hi,

I will try to get some minimal input to reproduce this. We were reading
events from Kafka so I might need some time.

Thanks Till for looking into this

Gyula

Till Rohrmann <trohrm...@apache.org> ezt írta (időpont: 2016. szept. 7.,
Sze, 17:34):

> Hi Gyula,
>
> could you send us en example input which reproduces the problem?
>
> The underlying problem is that the system expects a state to be still
> stored in the `SharedBuffer` which has already been removed. This should
> actually not happen and it clearly indicates a bug.
>
> Cheers,
> Till
>
> On Wed, Sep 7, 2016 at 4:43 PM, Gyula Fóra <gyula.f...@gmail.com> wrote:
>
>> Hi guys,
>>
>> We tried building a simple pattern with the CEP library that matches 2
>> events with 2 filter conditions (where) but we get a strange error that
>> comes from the stream operator:
>>
>> Pattern<Either<View, Click>, ?> viewAndClick = Pattern
>>                 .<Either<View,, Click>> begin("view")
>>                 .where(Either::isLeft)
>>                 .followedBy("click").where(Either::isRight)
>>                 .within(Time.hours(8));
>>
>> CEP.pattern(stream, pattern).select(...);
>>
>> We get the following exception when running this:
>> java.lang.RuntimeException: Failure happened in filter function.
>> at org.apache.flink.cep.nfa.NFA.computeNextStates(NFA.java:318)
>> at org.apache.flink.cep.nfa.NFA.process(NFA.java:162)
>> at
>> org.apache.flink.cep.operator.KeyedCEPPatternOperator.processEvent(KeyedCEPPatternOperator.java:48)
>> at
>> org.apache.flink.cep.operator.AbstractCEPBasePatternOperator.processElement(AbstractCEPBasePatternOperator.java:72)
>> at
>> org.apache.flink.cep.operator.AbstractKeyedCEPPatternOperator.processElement(AbstractKeyedCEPPatternOperator.java:161)
>> at org.apache.flink.streaming.runtime.io
>> .StreamInputProcessor.processInput(StreamInputProcessor.java:176)
>> at
>> org.apache.flink.streaming.runtime.tasks.OneInputStreamTask.run(OneInputStreamTask.java:66)
>> at
>> org.apache.flink.streaming.runtime.tasks.StreamTask.invoke(StreamTask.java:266)
>> at org.apache.flink.runtime.taskmanager.Task.run(Task.java:584)
>> at java.lang.Thread.run(Thread.java:745)
>> Caused by: java.lang.IllegalStateException: Could not find previous
>> shared buffer entry with key: State(view, Normal, [
>> StateTransition(TAKE, click, with filter),
>> StateTransition(IGNORE, view),
>> ]), value: Left(View[...]) and timestamp: 1473258371116. This can
>> indicate that the element belonging to the previous relation has been
>> already pruned, even though you expect it to be still there.
>> at org.apache.flink.cep.nfa.SharedBuffer.put(SharedBuffer.java:104)
>> at org.apache.flink.cep.nfa.NFA.computeNextStates(NFA.java:295)
>> ... 9 more
>>
>> Any ideas on what's going on here?
>>
>> Thanks,
>> Gyula
>>
>>
>>
>

Reply via email to