DynamoDB EnhancedClient UpdateItem backwards incompatible change breaks workflows
phillipberndt opened this issue · 3 comments
Describe the bug
Hi,
we rely on being able to use update operations to create nested structures with the enhanced client. A recent change, #5380, broke this functionality. We now get a
software.amazon.awssdk.services.dynamodb.model.DynamoDbException: The document path provided in the update expression is invalid for update
exception.
We noticed this after the SDK was automatically updated for our service, that is, in a situation where people do not read changelogs to look out for breaking changes. Backwards incompatible changes without version bumps are not a great customer experience. Please consider reverting the change, and reintroducing it in a way that does not break existing code. (e.g. automatically inject a SET that creates maps if they do not exist, or put the entire functionality behind a flag that has to be explicitly toggled in the builder.)
Cheers,
Phillip
Expected Behavior
Existing code relying on being able to create document types in update operations continues to work
Current Behavior
Existing code relying on being able to create document types in update operations broke
Reproduction Steps
See the pull request, we rely exactly on the behavior this changed.
Possible Solution
Please consider reverting the change, and reintroducing it in a way that does not break existing code. (e.g. automatically inject a SET that creates maps if they do not exist, or put the entire functionality behind a flag that has to be explicitly toggled in the builder.)
Additional Information/Context
No response
AWS Java SDK version used
JDK version used
17
Operating System and version
Linux
@phillipberndt thank you for the report, we are reverting #5380 and will follow-up with an investigation.
Hi @phillipberndt,
Thanks again for reporting the issue. Closing this as the changes were reverted in SDK version 2.27.24
.
Regards,
Chaitanya
This issue is now closed. Comments on closed issues are hard for our team to see.
If you need more assistance, please open a new issue that references this one.