Github user Aitozi commented on a diff in the pull request:

    https://github.com/apache/flink/pull/6168#discussion_r197482701
  
    --- Diff: 
flink-libraries/flink-cep/src/main/java/org/apache/flink/cep/nfa/NFA.java ---
    @@ -609,7 +611,7 @@ public void close() throws Exception {
                                                        startTimestamp);
     
                                        //check if newly created state is 
optional (have a PROCEED path to Final state)
    -                                   final State<T> finalState = 
findFinalStateAfterProceed(sharedBuffer, nextState, event.getEvent(), 
computationState);
    +                                   final State<T> finalState = 
findFinalStateAfterProceed(new ConditionContext<>(this, sharedBuffer, 
computationState), nextState, event.getEvent());
    --- End diff --
    
    Yes, you are right. Read the code again,  the `TAKE` branch only put the 
new `Node` to sharedBuffer which just point to the previousNodeId, This indeed 
don't affect the result of the current CS's partial match. I will take your 
suggestion


---

Reply via email to