surafel58 commented on issue #11911: URL: https://github.com/apache/seatunnel/issues/11911#issuecomment-5366357231
Expanding the scope of this issue based on @SEZ9's review of #11827. Besides retrying retryable failures, flush() error handling should also cover the replay case, so #11911 now covers two related behaviors: 1. Bounded retry with backoff for retryable failures (transport errors, 5xx, 429), which per the remote-write spec should be retried. 2. Treat a 400 whose body indicates a duplicate (duplicate sample for timestamp) or out-of-order sample as a tolerated/successful delivery rather than throwing. Per the spec 4xx must not be retried, and after a restore the replayed batch can contain samples the receiver already has or that are older than its head; without this, a rejected replay would fail the checkpoint again and loop the job. Both are flush() response-handling changes, so grouping them here keeps that logic in one place. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
