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
Copy file name to clipboardExpand all lines: docs/utilities/batch.md
+13-1
Original file line number
Diff line number
Diff line change
@@ -261,7 +261,7 @@ All records in the batch will be passed to this handler for processing, even if
261
261
262
262
***All records successfully processed**. We will return an empty list of item failures `{'batchItemFailures': []}`
263
263
***Partial success with some exceptions**. We will return a list of all item IDs/sequence numbers that failed processing
264
-
***All records failed to be processed**. We will raise `BatchProcessingError` exception with a list of all exceptions raised when processing
264
+
***All records failed to be processed**. We will throw a `FullBatchFailureError` error with a list of all the errors thrown while processing unless `throwOnFullBatchFailure` is disabled.
265
265
266
266
The following sequence diagrams explain how each Batch processor behaves under different scenarios.
267
267
@@ -450,6 +450,18 @@ We can automatically inject the [Lambda context](https://docs.aws.amazon.com/lam
By default, the `BatchProcessor` will throw a `FullBatchFailureError` if all records in the batch fail to process, we do this to reflect the failure in your operational metrics.
456
+
457
+
When working with functions that handle batches with a small number of records, or when you use errors as a flow control mechanism, this behavior might not be desirable as your function might generate an unnaturally high number of errors. When this happens, the [Lambda service will scale down the concurrency of your function](https://docs.aws.amazon.com/lambda/latest/dg/services-sqs-errorhandling.html#services-sqs-backoff-strategy){target="_blank"}, potentially impacting performance.
458
+
459
+
For these scenarios, you can set the `throwOnFullBatchFailure` option to `false` when calling.
0 commit comments