What happens if I have a duplicated message ID in the SQSBatchItemFailure


What happens if I mistakenly add the same message ID to the SQSBatchItemFailure list in my lambdas event response?

asked 2 months ago143 views
1 Answer

It will cause that message to be retried.

When Lambda processes a batch of SQS messages and encounters an error processing one of the messages, it will report the failed message ID back to SQS. If the same message ID is reported multiple times, SQS will keep returning that message to Lambda for processing.

Some key points:

Lambda follows an at-least-once delivery model for SQS integration. Messages may be delivered multiple times on failure or timeout.

Your Lambda function code needs to be idempotent to handle duplicate message delivery without errors.

Tracking state to avoid duplicate processing on retries is recommended, such as with DynamoDB.

Messages will be sent to the dead letter queue if the max receive count is exceeded due to failures.

Check your Lambda function code and logs to ensure errors are not falsely reported for messages.

profile picture
answered 2 months ago
  • so if I return 2 failures with the same id I will end up with to messages two be "reprocessed" in the DLQ for exemple?

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions