powertools-lambda-typescript icon indicating copy to clipboard operation
powertools-lambda-typescript copied to clipboard

feat(batch): add option to not throw `FullBatchFailureError` when the entire batch fails

Open arnabrahman opened this issue 7 months ago • 3 comments

Summary

Currently, when using the Batch Processor utility, if all the records in a batch are marked as failed, the utility throws a FullBatchFailureError. However, there can be scenarios where we do not want to throw an error for this condition.

This PR adds a throwOnFullBatchFailure option, giving users the ability to bypass the FullBatchFailureError when the entire batch fails.

Changes

  • Introduce throwOnFullBatchFailure option that can be passed as an option inside processPartialResponse or processPartialResponseSync functions
  • During full batch failure
    • If throwOnFullBatchFailure is false, we will not throw FullBatchFailureError exception
    • If throwOnFullBatchFailure is not provided or is true, we will keep the current implementation of throwing FullBatchFailureError exception
  • Update the relevant doc blocks
  • Unit tests for full batch failure for processPartialResponseandprocessPartialResponseSync` function
  • I believe we have to update the docs but couldn't figure it out in which section. For now, I have added a line for the option.

Issue number: #2122


By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Disclaimer: We value your time and bandwidth. As such, any pull requests created on non-triaged issues might not be successful.

arnabrahman avatar Jun 30 '24 11:06 arnabrahman