[V4] Update JSON error unmarshaller not to check for nested properties #3888
+86
−0
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Fixes #3764
Description
The SDK JSON (
aws-restjson1
) error unmarshaller checks for properties that end in certain values (the original spec is in thesdk-unmarshal-errors
SEP). However, customers can request that DynamoDB return values whenever a PUT item fails due to a condition not being met.If any properties in the customer model (which we don't control) also end with one of those suffixes, our unmarshaller fails. I updated it to only check for the values at the root level of the response.
This PR is for V4 as we have better coverage regarding protocol tests, but let me know if fixing it in V3 makes sense (from what I saw the logic has been in the SDK for quite some time and it's not a regression in V4).
Testing
DRY_RUN-77340fa6-b014-4138-9335-df03b1fad2c0
(.NET) andDRY_RUN-ef8c7677-19a9-4078-ae35-1027e13e061b
(PowerShell)ConditionalCheckFailedException
was thrown as expectedTypes of changes
Checklist
License