Ahmed Hamdy created FLINK-36972:
-----------------------------------
Summary: Unify AWS sink implementation
Key: FLINK-36972
URL: https://issues.apache.org/jira/browse/FLINK-36972
Project: Flink
Issue Type: Technical Debt
Components: Connectors / AWS
Reporter: Ahmed Hamdy
Fix For: aws-connector-5.1.0
h1. Description
AWS sinks (Kinesis, Firehose, DynamoDB, SQS) are all extensions of Async Sink
API, all of these implementations are almost identical in regards of submitting
request entries and fatal error handling and partial failure handling. The only
difference is in the sdk client implementation. This causes simple changes to
be replicated across all modules as in [this
pr](https://github.com/apache/flink-connector-aws/pull/186/files)
Ideally we want a common AWS sink writer with abstract client bean, different
sink implementers would only provide client bean implementation with specific
sdk clients while the common logic is unified.
h2. Side effects
- Some minor API changes might be required like changing
{{DynamoDbSinkFailFastException}} and others to
{{AwsAsyncSinkFailFastException}} and of course logging traces.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)