amazon-kinesis-client-python
amazon-kinesis-client-python copied to clipboard
NoSuchMethodError on DynamoDB integration with 2.1.4
With the upgrade to the latest version (2.1.4
) our tests failed with the following error:
java.lang.NoSuchMethodError: 'software.amazon.awssdk.services.dynamodb.model.CreateTableRequest$Builder software.amazon.awssdk.services.dynamodb.model.CreateTableRequest$Builder.deletionProtectionEnabled(java.lang.Boolean)'
at software.amazon.kinesis.leases.dynamodb.DynamoDBLeaseRefresher.createTableRequestBuilder(DynamoDBLeaseRefresher.java:814)
at software.amazon.kinesis.leases.dynamodb.DynamoDBLeaseRefresher.createLeaseTableIfNotExists(DynamoDBLeaseRefresher.java:210)
at software.amazon.kinesis.leases.dynamodb.DynamoDBLeaseCoordinator.initialize(DynamoDBLeaseCoordinator.java:215)
at software.amazon.kinesis.coordinator.Scheduler.initialize(Scheduler.java:342)
at software.amazon.kinesis.coordinator.Scheduler.run(Scheduler.java:316)
at software.amazon.kinesis.multilang.MultiLangDaemon$MultiLangRunner.call(MultiLangDaemon.java:95)
at software.amazon.kinesis.multilang.MultiLangDaemon$MultiLangRunner.call(MultiLangDaemon.java:86)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:829)
I suspect that this is due to the fact that the pom.xml
of this repo defines 2.19.2
of the aws-sdk
:
https://github.com/awslabs/amazon-kinesis-client-python/blob/739f4ba74f433bfeb3d96abc8e3569b395079a9f/pom.xml#L5
But another dependency - amazon-kinesis-client
in version 2.5.8
- defines 2.25.11
:
<awssdk.version>2.25.11</awssdk.version>