flink-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Tzu-Li (Gordon) Tai (JIRA)" <j...@apache.org>
Subject [jira] [Created] (FLINK-6772) Incorrect ordering of matched state events in Flink CEP
Date Tue, 30 May 2017 09:22:04 GMT
Tzu-Li (Gordon) Tai created FLINK-6772:
------------------------------------------

             Summary: Incorrect ordering of matched state events in Flink CEP
                 Key: FLINK-6772
                 URL: https://issues.apache.org/jira/browse/FLINK-6772
             Project: Flink
          Issue Type: Bug
          Components: CEP
            Reporter: Tzu-Li (Gordon) Tai


I've stumbled across an unexepected ordering of the matched state events. 

Pattern:
{code}
Pattern<String, ?> pattern = Pattern
    .<String>begin("start")
        .where(new IterativeCondition<String>() {
            @Override
            public boolean filter(String s, Context<String> context) throws Exception
{
                return s.startsWith("a-");
            }
        }).times(4).allowCombinations()
    .followedByAny("end")
        .where(new IterativeCondition<String>() {
            public boolean filter(String s, Context<String> context) throws Exception
{
                return s.startsWith("b-");
            }
    }).times(3).consecutive();
{code}

Input event sequence:
a-1, a-2, a-3, a-4, b-1, b-2, b-3

On b-3 a matched pattern would be triggered.

Now, in the {{Map<String, List<IN>>}} map passed via {{select}} in {{PatternSelectFunction}},
the list for the "end" state is:
b-3, b-1, b-2.

Based on the timestamp of the events (simply using processing time), the correct order should
be b-1, b-2, b-3.




--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Mime
View raw message