zhijiangW commented on a change in pull request #9854: [FLINK-14230][task] 
Change the endInput call of the downstream operator to after the upstream 
operator closes
URL: https://github.com/apache/flink/pull/9854#discussion_r338534542
 
 

 ##########
 File path: 
flink-streaming-java/src/test/java/org/apache/flink/streaming/runtime/tasks/SourceStreamTaskTest.java
 ##########
 @@ -479,5 +481,40 @@ public void cancel() {
                        running = false;
                }
        }
+
+       private static final class OutputRecordInCloseTestSource extends 
RichSourceFunction<String> {
+
+               private final String name;
+               private final String[] elements;
+
+               private transient volatile boolean canceled = false;
+
+               private transient SourceContext<String> context;
+
+               public OutputRecordInCloseTestSource(String name, String ... 
elements) {
+                       this.name = name;
+                       this.elements = elements.clone();
+               }
+
+               public void run(SourceContext<String> ctx) {
+                       context = ctx;
+                       int i = 0;
+                       while (!canceled && i < elements.length) {
+                               context.collect(elements[i++]);
+                       }
+               }
+
+               public void close() {
+                       if (!canceled) {
+                               checkNotNull(context);
+                               context.collect("[" + name + "]: Bye");
+                       }
+               }
+
+               @Override
+               public void cancel() {
+                       canceled = true;
 
 Review comment:
   I guess we could make this method empty and remove `canceled` variable for 
this concrete unit test. 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to