dynobase-icon
Dynobase

Error: AWS Lambda DynamoDB Stream Error

Rafal Wilinski

Answered by Rafal Wilinski

Last updated: October 23rd, 2026

Solution

A Lambda DynamoDB stream error can come from event-source configuration, missing permissions or a failing handler. Lambda retries records according to the mapping settings; retries are not unlimited protection against data loss because stream records expire.

  1. Check the event source mapping state and LastProcessingResult, the current stream ARN and the function's CloudWatch logs.
  2. Verify stream-read permissions and the configured stream view. REMOVE records have no NewImage; INSERT records have no OldImage.
  3. Enable ReportBatchItemFailures and return the sequence number of the first failed record. Returning the object alone has no effect unless the mapping enables it.
  4. Configure BisectBatchOnFunctionError, bounded retries, a maximum record age and an on-failure destination. Monitor IteratorAge and function errors.
// Return from the handler after catching a record-processing failure.
return {
  batchItemFailures: [{ itemIdentifier: record.dynamodb.SequenceNumber }],
};

Make processing idempotent because batches can be delivered more than once. Records are retained for 24 hours, and a bad batch can block progress on the affected shard. On-failure destinations help retain evidence or payloads according to the destination type. Sending records to SQS, including FIFO, does not by itself guarantee exactly-once application side effects.

See stream handling and full examples and AWS documentation.

Partial batch response documentation covers checkpoint behavior.

Dynobase is a Professional GUI Client for DynamoDB

Start your 7-day free trial today

Product Features

Download
/
Pricing
/
Member Portal
/
Privacy
/
EULA
/
Twitter
© 2026 Dynobase
+
Still using AWS DynamoDB Console?
Try Dynobase to accelerate your DynamoDB workflow. Start your 7-day free trial today.