deltacat
deltacat copied to clipboard
Implementation branch
This PR handles the implementation of a few aspects of the RetryHandlerSkeleton. Specifically, Additive Increase Multiplicative Decrease Batch scaling along with the basic case of executing retries on a detected Retry-able Exception.
There are two test suites in this PR:
- AIMD unit testing: I created simple test cases that ensure when a task is completed successfully or fails, the batch size is reflected correctly and is configurable to the client specifications.
- Retry Handling and Exception Wrapping: The test simulates a list of 10 Tasks of which 3 throw a retryable exception that the handler recognizes and enqueues for retry. The result is the list of results for the successful tasks and a second list of task_IDs for tasks that either 1. Exceeded the retry cap (Default cap = 3 retries) or 2. Non-retryable in nature.
The tests are failing. Please check.