Skip to content

Commit d27ee50

Browse files
committed
Address PR comments
Signed-off-by: Taylor Gray <tylgry@amazon.com>
1 parent 3daef6e commit d27ee50

2 files changed

Lines changed: 10 additions & 12 deletions

File tree

data-prepper-plugins/dynamodb-source/src/main/java/org/opensearch/dataprepper/plugins/source/dynamodb/stream/ShardAcknowledgementManager.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -75,23 +75,20 @@ public class ShardAcknowledgementManager {
7575
final DynamoDBSourceConfig dynamoDBSourceConfig,
7676
final Consumer<StreamPartition> stopWorkerConsumer
7777
) {
78-
this.acknowledgementSetManager = acknowledgementSetManager;
79-
this.sourceCoordinator = sourceCoordinator;
80-
this.dynamoDBSourceConfig = dynamoDBSourceConfig;
81-
this.executorService = Executors.newSingleThreadExecutor(BackgroundThreadFactory.defaultExecutorThreadFactory("dynamodb-shard-ack-monitor"));
82-
this.partitionsToRemove = Collections.synchronizedList(new ArrayList<>());
83-
this.partitionsToGiveUp = Collections.synchronizedList(new ArrayList<>());
84-
this.lastCheckpointTime = Instant.now();
85-
this.lock = new ReentrantLock();
86-
87-
executorService.submit(() -> monitorAcknowledgments(stopWorkerConsumer));
78+
this(acknowledgementSetManager, sourceCoordinator, dynamoDBSourceConfig,
79+
createExecutorService(), stopWorkerConsumer);
80+
}
81+
82+
private static ExecutorService createExecutorService() {
83+
return Executors.newSingleThreadExecutor(BackgroundThreadFactory.defaultExecutorThreadFactory("dynamodb-shard-ack-monitor"));
8884
}
8985

9086
@VisibleForTesting
9187
ShardAcknowledgementManager(final AcknowledgementSetManager acknowledgementSetManager,
9288
final EnhancedSourceCoordinator sourceCoordinator,
9389
final DynamoDBSourceConfig dynamoDBSourceConfig,
94-
final ExecutorService executorService) {
90+
final ExecutorService executorService,
91+
final Consumer<StreamPartition> stopWorkerConsumer) {
9592
this.executorService = executorService;
9693
this.acknowledgementSetManager = acknowledgementSetManager;
9794
this.sourceCoordinator = sourceCoordinator;
@@ -100,6 +97,7 @@ public class ShardAcknowledgementManager {
10097
this.partitionsToGiveUp = Collections.synchronizedList(new ArrayList<>());
10198
this.lastCheckpointTime = Instant.now();
10299
this.lock = new ReentrantLock();
100+
executorService.submit(() -> monitorAcknowledgments(stopWorkerConsumer));
103101
}
104102

105103
void monitorAcknowledgments(final Consumer<StreamPartition> stopWorkerConsumer) {

data-prepper-plugins/dynamodb-source/src/test/java/org/opensearch/dataprepper/plugins/source/dynamodb/stream/ShardAcknowledgementManagerTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ void setUp() {
8787

8888
private ShardAcknowledgementManager createObjectUnderTest() {
8989
return new ShardAcknowledgementManager(
90-
acknowledgementSetManager, sourceCoordinator, dynamoDBSourceConfig, executorService);
90+
acknowledgementSetManager, sourceCoordinator, dynamoDBSourceConfig, executorService, mock(Consumer.class));
9191
}
9292

9393
@Test

0 commit comments

Comments
 (0)