Skip to content

Commit 8d42118

Browse files
committed
Update doco
1 parent bac2581 commit 8d42118

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

docs/utilities/batch.md

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ description: Utility
44
---
55

66
The SQS batch processing utility provides a way to handle partial failures when processing batches of messages from SQS.
7+
The utility handles batch processing for both
8+
[standard](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/standard-queues.html) and
9+
[FIFO](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/FIFO-queues.html) SQS queues.
710

811
**Key Features**
912

@@ -110,8 +113,11 @@ Both have nearly the same behaviour when it comes to processing messages from th
110113
* **Entire batch has been successfully processed**, where your Lambda handler returned successfully, we will let SQS delete the batch to optimize your cost
111114
* **Entire Batch has been partially processed successfully**, where exceptions were raised within your `SqsMessageHandler` interface implementation, we will:
112115
- **1)** Delete successfully processed messages from the queue by directly calling `sqs:DeleteMessageBatch`
113-
- **2)** if, non retryable exceptions occur, messages resulting in configured exceptions during processing will be immediately moved to the dead letter queue associated to the source SQS queue or deleted from the source SQS queue if `deleteNonRetryableMessageFromQueue` is set to `true`.
114-
- **3)** Raise `SQSBatchProcessingException` to ensure failed messages return to your SQS queue
116+
- **2)** If a message with a [message group ID](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/using-messagegroupid-property.html) fails,
117+
the processing of the batch will be stopped and the remainder of the messages will be returned to SQS.
118+
This behaviour [is required to handle SQS FIFO queues](https://docs.aws.amazon.com/lambda/latest/dg/with-sqs.html#services-sqs-batchfailurereporting).
119+
- **3)** if non retryable exceptions occur, messages resulting in configured exceptions during processing will be immediately moved to the dead letter queue associated to the source SQS queue or deleted from the source SQS queue if `deleteNonRetryableMessageFromQueue` is set to `true`.
120+
- **4)** Raise `SQSBatchProcessingException` to ensure failed messages return to your SQS queue
115121

116122
The only difference is that **SqsUtils Utility API** will give you access to return from the processed messages if you need. Exception `SQSBatchProcessingException` thrown from the
117123
utility will have access to both successful and failed messaged along with failure exceptions.

0 commit comments

Comments
 (0)