From e731486b7fad3c1c4ed060811f1016114ddb9302 Mon Sep 17 00:00:00 2001 From: Brendan Lynch <134438333+brendan-p-lynch@users.noreply.github.com> Date: Wed, 11 Oct 2023 14:54:49 -0700 Subject: [PATCH] Updated Guava version, added backoff for ShardSync Integ test, and reintroduced SNAPSHOT version (#1214) * Updated guava version to 32.1.1 and added backoff logic for ShardSync Integration test * Added back snapshot version classifier --------- Co-authored-by: Brendan Lynch --- pom.xml | 4 ++-- .../lib/worker/ShardSyncTaskIntegrationTest.java | 11 +++++++++-- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pom.xml b/pom.xml index d00dc58c..f1f96381 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ amazon-kinesis-client jar Amazon Kinesis Client Library for Java - 1.15.0 + 1.15.1-SNAPSHOT The Amazon Kinesis Client Library for Java enables Java developers to easily consume and process data from Amazon Kinesis. @@ -55,7 +55,7 @@ com.google.guava guava - 31.0.1-jre + 32.1.1-jre com.google.protobuf diff --git a/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java b/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java index a4afa053..3df67220 100644 --- a/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java +++ b/src/test/java/com/amazonaws/services/kinesis/clientlibrary/lib/worker/ShardSyncTaskIntegrationTest.java @@ -42,6 +42,7 @@ import com.amazonaws.services.kinesis.leases.impl.KinesisClientLease; import com.amazonaws.services.kinesis.leases.impl.KinesisClientLeaseManager; import com.amazonaws.services.kinesis.leases.interfaces.IKinesisClientLeaseManager; import com.amazonaws.services.kinesis.model.StreamStatus; +import com.amazonaws.services.kinesis.model.LimitExceededException; import static junit.framework.TestCase.fail; @@ -58,6 +59,8 @@ public class ShardSyncTaskIntegrationTest { private IKinesisProxy kinesisProxy; private final KinesisShardSyncer shardSyncer = new KinesisShardSyncer(new KinesisLeaseCleanupValidator()); + private static final int retryBackoffMillis = 1000; + /** * @throws java.lang.Exception */ @@ -71,9 +74,13 @@ public class ShardSyncTaskIntegrationTest { } catch (AmazonServiceException ase) { } - StreamStatus status; + StreamStatus status = null; do { - status = StreamStatus.fromValue(kinesis.describeStream(STREAM_NAME).getStreamDescription().getStreamStatus()); + try { + status = StreamStatus.fromValue(kinesis.describeStream(STREAM_NAME).getStreamDescription().getStreamStatus()); + } catch (LimitExceededException e) { + Thread.sleep(retryBackoffMillis + (long) (Math.random() * 100)); + } } while (status != StreamStatus.ACTIVE); }