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 ad7475b..34d6c35 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 @@ -974,6 +974,10 @@ public class KinesisMessageDrivenChannelAdapter extends MessageProducerSupport .amazonKinesis .getShardIterator(shardIteratorRequest) .getShardIterator(); + if (this.shardIterator == null) { + // The shard is closed - stop consumer + this.state = ConsumerState.STOP; + } if (ConsumerState.STOP != this.state) { this.state = ConsumerState.CONSUME; }