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

    https://github.com/apache/flink/pull/4605#discussion_r139630504
  
    --- Diff: 
flink-connectors/flink-connector-cassandra/src/main/java/org/apache/flink/streaming/connectors/cassandra/CassandraSinkBase.java
 ---
    @@ -37,29 +41,49 @@
      *
      * @param <IN> Type of the elements emitted by this sink
      */
    -public abstract class CassandraSinkBase<IN, V> extends 
RichSinkFunction<IN> {
    +public abstract class CassandraSinkBase<IN, V> extends 
RichSinkFunction<IN> implements CheckpointedFunction {
        protected final Logger log = LoggerFactory.getLogger(getClass());
        protected transient Cluster cluster;
        protected transient Session session;
     
    -   protected transient volatile Throwable exception;
    +   protected transient volatile Throwable asyncError;
        protected transient FutureCallback<V> callback;
     
    -   private final ClusterBuilder builder;
    +   protected final ClusterBuilder builder;
     
        private final AtomicInteger updatesPending = new AtomicInteger();
     
    +   /**
    +    * If true, the producer will wait until all outstanding action 
requests have been sent to C*.
    +    */
    +   private boolean flushOnCheckpoint = true;
    --- End diff --
    
    Should we default this setting as true then? Making it final does not allow 
to reset the flag after obj is constructed. Further, should this behavior be 
applied to all other SinkBase / Producer classes in the future?


---

Reply via email to