## What is the purpose of the change

This pull request provides support to optionally handle cassandra sink errors. 
A user may choose to ignore an exception instead of allowing the sink to fail. 
The handler is similar to `ActionRequestFailureHandler` in Elastic Sink.


## Brief change log

  - *Added interface `CassandraFailureHandler` and a no-op implementation 
`NoOpCassandraFailureHandler`*
  - *`CassandraSinkBase` has a new field `failureHandler` and updated 
constructor*
  - *`checkAsyncErrors` method in `CassandraSinkBase` calls the 
`failureHandler` instead of throwing an `IOException`*
  - *`CassandraSinkBuilder` has a new optional field `failureHandler` and 
updated setter. Uses no-op implementation as default*

## Verifying this change

This change added tests and can be verified as follows:

  - *Added test in class `CassandraSinkBaseTest` that validates that 
failureHandler is called and the error is ignored*

## Does this pull request potentially affect one of the following parts:

  - Dependencies (does it add or upgrade a dependency): **no**
  - The public API, i.e., is any changed class annotated with 
`@Public(Evolving)`: **yes**
  - The serializers: **no**
  - The runtime per-record code paths (performance sensitive): **no**
  - Anything that affects deployment or recovery: JobManager (and its 
components), Checkpointing, Yarn/Mesos, ZooKeeper: **no**
  - The S3 file system connector: **no**

## Documentation

  - Does this pull request introduce a new feature? **yes**
  - If yes, how is the feature documented? **docs**


[ Full content available at: https://github.com/apache/flink/pull/6732 ]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to