Hi Alieh,
Thanks for the KIP! I have couple of comments
- You mentioned in the KIP motivation,
> Another example for which a production exception handler could be useful is
> if a user tries to write into a non-existing topic, which returns a retryable
> error code; with infinite retries, the producer would hang retrying forever.
> A handler could help to break the infinite retry loop.
How the handler can differentiate between something that is temporary and it
should keep retrying and something permanent like forgot to create the topic?
temporary here could be
the producer get deployed before the topic creation finish (specially if the
topic creation is handled via IaC)
temporary offline partitions
leadership changing
Isn’t this putting the producer at risk of dropping records
unintentionally?
- Can you elaborate more on what is written in the compatibility / migration
plan section please by explaining in bit more details what is the changing
behaviour and how this will impact client who are upgrading?
- In the proposal changes can you elaborate in the KIP where in the producer
lifecycle will ClientExceptionHandler and TransactionExceptionHandler get
triggered, and how will the producer configure them to point to costumed
implementation.
Thanks
Omnia
> On 17 Apr 2024, at 13:13, Alieh Saeedi <[email protected]> wrote:
>
> Hi all,
> Here is the KIP-1038: Add Custom Error Handler to Producer.
> <https://cwiki.apache.org/confluence/display/KAFKA/KIP-1038%3A+Add+Custom+Error+Handler+to+Producer>
> I look forward to your feedback!
>
> Cheers,
> Alieh