[ https://issues.apache.org/jira/browse/FLINK-3703?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15420110#comment-15420110 ]
ASF GitHub Bot commented on FLINK-3703: --------------------------------------- GitHub user mushketyk opened a pull request: https://github.com/apache/flink/pull/2367 [FLINK-3703][cep] Add sequence matching semantics to discard matched events Thanks for contributing to Apache Flink. Before you open your pull request, please take the following check list into consideration. If your changes take all of the items into account, feel free to open your pull request. For more information and/or questions please refer to the [How To Contribute guide](http://flink.apache.org/how-to-contribute.html). In addition to going through the list, please provide a meaningful description of your changes. - [x] General - The pull request references the related JIRA issue ("[FLINK-XXX] Jira title text") - The pull request addresses only one issue - Each commit in the PR has a meaningful commit message (including the JIRA id) - [ ] Documentation - Documentation has been added for new functionality - Old documentation affected by the pull request has been updated - JavaDoc for public methods has been added - [x] Tests & Build - Functionality added by the pull request is covered by tests - `mvn clean verify` has been executed successfully locally or a Travis build has passed This PR adds sequence matching semantics to matched events, so a user can specify if a particular event can be used in multiple matching sequences. I didn't add user documentation yet, but I'll add it when someone from Flink community will check if this PR implements matching semantics correctly. You can merge this pull request into a Git repository by running: $ git pull https://github.com/mushketyk/flink sequence-matching-semantics Alternatively you can review and apply these changes as the patch at: https://github.com/apache/flink/pull/2367.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #2367 ---- commit 67a0502ec8586caae94992eeb29125151fc392d7 Author: Ivan Mushketyk <ivan.mushke...@gmail.com> Date: 2016-08-12T22:46:50Z [FLINK-3703] Minor refactoring commit 010abdb4dd8649ded338caaaeca857357585173b Author: Ivan Mushketyk <ivan.mushke...@gmail.com> Date: 2016-08-13T20:42:55Z [FLINK-3703][cep] Add sequence matching semantics to discard matched events ---- > Add sequence matching semantics to discard matched events > --------------------------------------------------------- > > Key: FLINK-3703 > URL: https://issues.apache.org/jira/browse/FLINK-3703 > Project: Flink > Issue Type: Improvement > Components: CEP > Affects Versions: 1.0.0, 1.1.0 > Reporter: Till Rohrmann > Assignee: Ivan Mushketyk > Priority: Minor > > There is no easy way to decide whether events can be part of multiple > matching sequences or not. Currently, the default is that an event can > participate in multiple matching sequences. E.g. if you have the pattern > {{Pattern.<Event>begin("a").followedBy("b")}} and the input event stream > {{Event("A"), Event("B"), Event("C")}}, then you will generate the following > matching sequences: {{Event("A"), Event("B")}}, {{Event("A"), Event("C")}} > and {{Event("B"), Event("C")}}. > It would be useful to allow the user to define where the matching algorithm > should continue after a matching sequence has been found. Possible option > values could be > * {{from first}} - continue keeping all events for future matches (that is > the current behaviour) > * {{after first}} - continue after the first element (remove first matching > event and continue with the second event) > * {{after last}} - continue after the last element (effectively discarding > all elements of the matching sequence) -- This message was sent by Atlassian JIRA (v6.3.4#6332)