From c655a8c4e247a29843ca85c6e912abd9dd02233d Mon Sep 17 00:00:00 2001 From: Artem Bilan Date: Mon, 25 Jun 2018 21:42:24 -0400 Subject: [PATCH] Fix some locking issues in the KinesisMDChAdapter Related to https://github.com/spring-projects/spring-integration-aws/issues/90 --- .../inbound/kinesis/KinesisMessageDrivenChannelAdapter.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/springframework/integration/aws/inbound/kinesis/KinesisMessageDrivenChannelAdapter.java b/src/main/java/org/springframework/integration/aws/inbound/kinesis/KinesisMessageDrivenChannelAdapter.java index 2d66a6b..49596b4 100644 --- a/src/main/java/org/springframework/integration/aws/inbound/kinesis/KinesisMessageDrivenChannelAdapter.java +++ b/src/main/java/org/springframework/integration/aws/inbound/kinesis/KinesisMessageDrivenChannelAdapter.java @@ -1193,6 +1193,9 @@ public class KinesisMessageDrivenChannelAdapter extends MessageProducerSupport i logger.error("Error during locking: " + lock, e); return false; } + finally { + this.forLocking.remove(lock); + } } void unlock(String lockKey) { @@ -1229,6 +1232,7 @@ public class KinesisMessageDrivenChannelAdapter extends MessageProducerSupport i } catch (Exception e) { logger.error("Error during locking: " + lock, e); + settableFuture.set(false); } finally { entry.setValue(null);