-
Notifications
You must be signed in to change notification settings - Fork 470
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Kafka pubsub message gets dropped despite default retry forever policy #3529
Comments
Based on research, this issue is the result of this code:
The solution is not super clear here as there is a lot of ping pong between the dapr and component-contrib code. An expert eye would be welcome. Specifically, it is not clear what acks the message when a permanent error occurs in general... The only place that seems to ack the message is in the doCallBack() if the handler doesn't return an error... |
cc @halspang can you take a look? |
I can provide a log of the event that got dropped... Dapr retried for 18h on the same message (as expected) then upon pod termination, the message "Too many failed attempts at processing Kafka message:..." showed up and the message got skipped... Please note this happened in version 1.13.4 as our Production cluster hasn't been updated yet to 1.14.x (we were going to upgrade last week but now waiting for 1.14.2) |
I can reproduce this as well locally, but I suspect something is off with my local Docker based Kafka as this reproduces all the way back to Dapr 1.10.x. (didn't test further) |
@yaron2 I think I figured it out. the problem occurs because there is a valid message that exists afterwards and the Testing it right now... |
Your local issue is probably because (like me earlier) the first message you're processing is invalid and therefore the offset was NEVER committed for this group. So next restart, it will default to Newest offset... Which is normal behavior... It took me a while to figure this one out! :D |
I literally just now noticed this. Setting |
This is issue is now resolved |
Expected Behavior
Kafka pubsub invalid message gets retried forever when default retry policy in place
Actual Behavior
Kafka pubsub invalid message gets dropped upon the pod terminating
Steps to Reproduce the Problem
Release Note
RELEASE NOTE: FIX Bug in Kafka Pubsub where poison pill message will get dropped upon pod termination despite retry forever policy
The text was updated successfully, but these errors were encountered: