QATOOLS-2 [DynamoDB] Upgraded to AWS SDK for Java v2#24
QATOOLS-2 [DynamoDB] Upgraded to AWS SDK for Java v2#24CodeLieutenant merged 1 commit intoscylladb:masterfrom
Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR upgrades the DynamoDB client from AWS SDK for Java v1 to v2, removing the deprecated credentials file configuration in favor of the Default Credential Provider chain.
Key changes:
- Migration from AWS SDK v1 (1.12.565) to v2 (2.27.21)
- Removal of
dynamodb.awsCredentialsFileproperty and related credentials file handling - Updated all DynamoDB API calls to use v2 builder patterns and method names
Reviewed Changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| dynamodb/pom.xml | Updates SDK dependencies from v1 to v2, including apache-client and dynamodb modules |
| dynamodb/src/main/java/site/ycsb/db/DynamoDBClient.java | Migrates client initialization and all API operations to SDK v2 patterns |
| dynamodb/src/test/java/site/ycsb/db/dynamodb/DynamoDBClientTest.java | Updates test setup and assertions to use SDK v2 API |
| dynamodb/conf/dynamodb.properties | Removes credentials file references and unused connection parameters |
| dynamodb/conf/AWSCredentials.properties | Removes deprecated credentials template file |
| dynamodb/README.md | Updates documentation for new credential provider approach |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@m-szymon it broke some tests |
Yes, I'm taking care of it. But first I am trying to figure out why the test is not running locally (probably after Fedora upgrade): |
4048b08 to
682d624
Compare
Based on work by Arjan Schaaf <schaafas@amazon.nl> Fixes scylladb#10
682d624 to
92cad16
Compare
It was a problem with credentials - basically all tests failed. And locally it used my system configuration. |
|
@soyacz @CodeLieutenant what's blocking this one ? unit-tests seems to be working now |
|
@CodeLieutenant can you take a look? Merge if LGTY. |
…namoDB client for ScyllaDB) Initial implementation for Loadbalancing strategy for Alternator - ScyllaDB compatible API for DynamoDB. This Code has been based on previous work done by @dkropachev and drivers team (https://github.com/scylladb/alternator-load-balancing/tree/master/java), further improved and adapted for the use in YCSB. Also it is created in a way that can be extract into separated library (if proven reliable) so that others can use it who need loadbalacing support. - [x] Since this one PR is using Java 21, `checkstyle.xml` has been updated to allow new features from Java 21 not to be counted as errors but allowed. - [x] Additional properties added needed to customize the load-balancing strategy Changes from the original Alternator Loadbalancer: - Use of Java 21 Features and Virtual Threads for managing and checking the ScyllaDB Hosts ( this can be further improved when we switch to Java 23+, as it brings a lot of improvements to the Virtual Thread API) - Fully Async implementation for both Alternator Client and Loadbalancer - Removed support for SDK v1 since YCSB migrated from it PR #24 Signed-off-by: Dusan Malusev <dusan@dusanmalusev.dev>
Based on #3 work by Arjan Schaaf schaafas@amazon.nl
I split original commit into 2 parts - this PR only updates SDK.
Due to previous changes in the code it required some adaptations.
Tests (which didn't exists in original commit) were also updated to use new SDK.
It removes option
dynamodb.awsCredentialsFileswitching to the "Default Credential Provider" chain.Fixes #10