aws-sdk-kotlin
                                
                                 aws-sdk-kotlin copied to clipboard
                                
                                    aws-sdk-kotlin copied to clipboard
                            
                            
                            
                        S3 Customization to handle status code 200 Errors
Related to https://github.com/awslabs/smithy-kotlin/issues/323
Relevant information from @aajtodd copied from related ticket:
Here is what Go does for status code 200 Errors:
https://github.com/aws/aws-sdk-go-v2/blob/main/codegen/smithy-aws-go-codegen/src/main/java/software/amazon/smithy/aws/go/codegen/customization/S3ErrorWith200Status.java#L18 https://github.com/aws/aws-sdk-go-v2/blob/d05dd9b08d180c3696c33130548881966b56ea29/service/s3/internal/customizations/handle_200_error.go#L33
There are a few approaches here. We probably will already have a custom error middleware for S3 for handling custom metadata. This logic could be added to the existing middleware. Alternatively, a middleware could be mapped to only specific operations as the Go SDK does. This would be more work as I don't believe we have support for that at this time.
estimate (group in w/ existing S3 error handler): 1 week estimate (provide middleware per-operation): 3 weeks
new_retries SEP recently added
200         | InternalError                          | s3   
Apparently DeleteObjects can also return a 200 error response: https://github.com/awslabs/aws-sdk-rust/issues/873
Likely any control plane API is able to return a 200 error response.
⚠️COMMENT VISIBILITY WARNING⚠️
Comments on closed issues are hard for our team to see. If you need more assistance, please either tag a team member or open a new issue that references this one. If you wish to keep having a conversation with other community members under this issue feel free to do so.