awslabs / dynamodb-cross-region-library

A library to facilitate cross-region replication with Amazon DynamoDB Streams.
Apache License 2.0
275 stars 98 forks source link

upgrade this to latest aws sdks and aws client libraries #31

Closed ttaranov closed 7 years ago

ttaranov commented 8 years ago

this implementation is an AWS recommended solution for implementing cross region replication for DynamoDB, however the codebase doesn't use nor compile against latest AWS SDK.

herechris commented 8 years ago

I'm having request signature problems. I'm not sure if it's related, some quick googling says the sdk is often to blame. I'm stuck with aws-sdk 1.10.77.

gabinante commented 7 years ago

us-east-2 is unrecognized - possibly because of the outdated SDK?

java.lang.IllegalArgumentException: Cannot create enum from us-east-2 value!

sivankumar86 commented 7 years ago

I have updated latest aws SDK to support us-east-2. download the changes from here

https://github.com/awsbigdata/dynamodb-cross-region-library

gabinante commented 7 years ago

@sivankumar86 thanks, but I'm getting the following error when using your fork: 2016-12-22 22:59:02,769 ERROR com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker - Worker.run caught exception, sleeping for 500 milli seconds! java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.AbstractMethodError: com.amazonaws.services.kinesis.connectors.KinesisConnectorRecordProcessor.shutdown(Lcom/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer;Lcom/amazonaws/services/kinesis/clientlibrary/types/ShutdownReason;)V at com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardConsumer.checkAndSubmitNextTask(ShardConsumer.java:157) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardConsumer.consumeShard(ShardConsumer.java:126) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.Worker.run(Worker.java:347) at com.amazonaws.services.dynamodbv2.streams.connectors.CommandLineInterface.main(CommandLineInterface.java:178) Caused by: java.util.concurrent.ExecutionException: java.lang.AbstractMethodError: com.amazonaws.services.kinesis.connectors.KinesisConnectorRecordProcessor.shutdown(Lcom/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer;Lcom/amazonaws/services/kinesis/clientlibrary/types/ShutdownReason;)V at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShardConsumer.checkAndSubmitNextTask(ShardConsumer.java:137) ... 3 more Caused by: java.lang.AbstractMethodError: com.amazonaws.services.kinesis.connectors.KinesisConnectorRecordProcessor.shutdown(Lcom/amazonaws/services/kinesis/clientlibrary/interfaces/IRecordProcessorCheckpointer;Lcom/amazonaws/services/kinesis/clientlibrary/types/ShutdownReason;)V at com.amazonaws.services.kinesis.clientlibrary.lib.worker.V1ToV2RecordProcessorAdapter.shutdown(V1ToV2RecordProcessorAdapter.java:48) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.ShutdownTask.call(ShutdownTask.java:100) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:49) at com.amazonaws.services.kinesis.clientlibrary.lib.worker.MetricsCollectingTaskDecorator.call(MetricsCollectingTaskDecorator.java:24) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745)

Unfortunately, your repo doesn't have issues enabled... I'm still hoping the maintainers of this library will release an official fix.

amcp commented 7 years ago

Will be fixed shortly. Meanwhile, you can work of the fixes on my branch. Note, you will need my update to the DynamoDB Streams adapter for Kinesis available here.

amcp commented 7 years ago

Fixed.