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)

Reply via email to