You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Resharding the kinesis stream results in a ShardClosedException. Catching this exception is fine, but I think this is resulting in the reader being added to the "dead_readers" list and then we try to reopen it. Then on line 310 of the kinesis_consumer.py, we get the following exception:
return future.result()
File "pull-akcl", line 104, in read_stream
async for shard_reader in consumer.get_shard_readers():
File "/home/matt/git/async-kinesis-client/src/async_kinesis_client/kinesis_consumer.py", line 310, in get_shard_readers
**iterator_args
File "/home/matt/.pyenv/versions/3.7.4/lib/python3.7/site-packages/aiobotocore/client.py", line 105, in _make_api_call
raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (ValidationException) when calling the GetShardIterator operation: 1 validation error detected: Value '' at 'startingSequenceNumber' failed to satisfy constraint: Member must satisfy regular expression pattern: 0|([1-9]\d{0,128})
Is there a way to mark the reader as closed and not try to reopen it? Apologies if there is an obvious way to do this, I just can't see it at the moment.
I did try to stop the reader with the .stop() but I don't think that behaves as I was hoping.
I am invoking the reader with AT_TIMESTAMP and no dynamodb instance.
The text was updated successfully, but these errors were encountered:
Hi @scattym
I'm afraid, this case is not very well tested and might be buggy. I'll look into it.
The initial idea was that if resharding happens, some readers might die and new readers will be returned, but I totally didn't think about what will happen to all the checkpointing business, which is really a shame.
Resharding the kinesis stream results in a ShardClosedException. Catching this exception is fine, but I think this is resulting in the reader being added to the "dead_readers" list and then we try to reopen it. Then on line 310 of the kinesis_consumer.py, we get the following exception:
Is there a way to mark the reader as closed and not try to reopen it? Apologies if there is an obvious way to do this, I just can't see it at the moment.
I did try to stop the reader with the .stop() but I don't think that behaves as I was hoping.
I am invoking the reader with AT_TIMESTAMP and no dynamodb instance.
The text was updated successfully, but these errors were encountered: