Caizhi Weng created FLINK-18558:
-----------------------------------

             Summary: Introduce collect iterator with at least once semantics 
and exactly once semantics without fault tolerance
                 Key: FLINK-18558
                 URL: https://issues.apache.org/jira/browse/FLINK-18558
             Project: Flink
          Issue Type: Improvement
          Components: API / DataStream, Table SQL / API
            Reporter: Caizhi Weng
             Fix For: 1.12.0


Currently {{TableResult#collect}} and {{DataStreamUtils#collect}} can only 
produce results if users explicitly enable checkpoint for infinite streaming 
jobs. It would be strange to require the users to do so if they just want to 
take a look at their data.

We should introduce collect iterator with at least once semantics and exactly 
once semantics without fault tolerance. When calling the {{collect}} method, we 
should automatically pick an iterator for the user:
* If the user does not explicitly enable a checkpoint, we use exactly once 
iterator without fault tolerance. That is to say, the iterator will throw 
exception once the job restarts.
* If the user explicitly enables an exactly once checkpoint, we use the current 
implementation of collect iterator.
* If the user explicitly enables an at least once checkpoint, we use the at 
least once iterator. That is to say, the iterator ignores both checkpoint 
information and job restarts.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to