Closed yordis closed 1 year ago
When a new consumer is joining the consumer group, Kafka asks all the consumers to stop what they are doing and join the new generation(hence drain_after_revoke call)
At the same time your erlang node is trying stop all the processes as the deployment is triggering that.
~I think what is happening here is that your broadway consumers are not finishing the job on time and the beam is killing them forcefully.~
~Edit1: What I wrote here doesn't make sense since broadway consumers are independent of the producer process.~
Edit2: What I said originally make sense, the producer waits for all the handover jobs to be finished before returning to handle_call
I'd suggest to measure the consumption time for your messages using telemetry. If they are low(~20-30 milliseconds) it could be that the dispatcher is overloaded
We have pushed several improvements here, including a just published new version. Please let us know if the error persists!
I am receiving the following error in Sentry:
Coming from https://github.com/dashbitco/broadway_kafka/blob/271464fdcbe1e06bef75572319cf9ef9e5f01c41/lib/broadway_kafka/producer.ex#L525
I wondering if we should catch the error and return
:ok
here.thoughts?