Skip to content

Introduce the possibility to specify returnValuesOnConditionCheckFailure in DynamoDB Enhanced operations #4708

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Conversation

breader124
Copy link
Contributor

Motivation and Context

This change is required, because DynamoDB Enhanced library doesn't support returnValuesOnConditionCheckFailure parameter introduced recently in this announcement. Originally the request to introduce changes was reported in scope of #4442

Modifications

In order to add the possibility to specify returnValuesOnConditionCheckFailure and handle it properly I've modified (Put|Update|Delete)ItemEnhancedRequest and (Put|Update|Delete)ItemOperation classes. Then I've modified unit test classes associated with the ones mentioned above. At the very end I've modified both CrudWithResponseIntegrationTest and AsyncCrudWithResponseIntegrationTest to cover introduced changes with integration tests.

Testing

I've implemented both unit and integration tests executed against real DynamoDB table to cover the changes. All tests passed locally.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)

Checklist

  • I have read the CONTRIBUTING document
  • Local run of mvn install succeeds
  • My code follows the code style of this project
  • My change requires a change to the Javadoc documentation
  • I have updated the Javadoc documentation accordingly
  • I have added tests to cover my changes
  • All new and existing tests passed
  • I have added a changelog entry. Adding a new entry must be accomplished by running the scripts/new-change script and following the instructions. Commit the new file created by the script in .changes/next-release with your changes.
  • My change is to implement 1.11 parity feature and I have updated LaunchChangelog

License

  • I confirm that this pull request can be released under the Apache 2 license

@breader124 breader124 requested a review from a team as a code owner November 19, 2023 14:13
@debora-ito
Copy link
Member

@breader124 thank you for the PR, this is a highly requested feature, we'll review it as soon as we can.
We are fully allocated with some internal work for re:invent, so this can take some time.

@debora-ito debora-ito added the needs-review This issue or PR needs review from the team. label Nov 21, 2023
Copy link
Contributor

@anirudh9391 anirudh9391 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good.

Copy link

sonarqubecloud bot commented Dec 1, 2023

SonarCloud Quality Gate failed.    Quality Gate failed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

94.2% 94.2% Coverage
23.8% 23.8% Duplication

idea Catch issues before they fail your Quality Gate with our IDE extension sonarlint SonarLint

@anirudh9391
Copy link
Contributor

anirudh9391 commented Dec 1, 2023

AWS-SDK build for JDK-21 does not show up on PR, but succeeds

@anirudh9391 anirudh9391 merged commit ac15f07 into aws:master Dec 1, 2023
@anirudh9391
Copy link
Contributor

Failed checks belong to incorrectly triggered codebuilds.

All checks pass, verified in codebuild

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
needs-review This issue or PR needs review from the team.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants