AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
Retrieves the stream records from a given shard.
Specify a shard iterator using the
ShardIterator parameter. The shard
iterator specifies the position in the shard from which you want to start reading
stream records sequentially. If there are no stream records available in the portion
of the shard that the iterator points to,
GetRecords returns an empty
list. Note that it might take multiple calls to get to a portion of the shard that
contains stream records.
GetRecords can retrieve a maximum of 1 MB of data or 1000 stream records,
whichever comes first.
For .NET Core this operation is only available in asynchronous form. Please refer to GetRecordsAsync.
public virtual GetRecordsResponse GetRecords( String shardIterator )
A shard iterator that was retrieved from a previous GetShardIterator operation. This iterator can be used to access the stream records in this shard.
|ExpiredIteratorException||The shard iterator has expired and can no longer be used to retrieve stream records. A shard iterator expires 15 minutes after it is retrieved using the GetShardIterator action.|
|InternalServerErrorException||An error occurred on the server side.|
|LimitExceededException||Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff. For more information, go to Error Retries and Exponential Backoff in the Amazon DynamoDB Developer Guide.|
|ResourceNotFoundException||The operation tried to access a nonexistent stream.|
|TrimmedDataAccessException||The operation attempted to read past the oldest stream record in a shard. In DynamoDB Streams, there is a 24 hour limit on data retention. Stream records whose age exceeds this limit are subject to removal (trimming) from the stream. You might receive a TrimmedDataAccessException if: You request a shard iterator with a sequence number older than the trim point (24 hours). You obtain a shard iterator, but before you use the iterator in a GetRecords request, a stream record in the shard exceeds the 24 hour period and is trimmed. This causes the iterator to access a record that no longer exists.|
Supported in: 4.5, 4.0, 3.5