Is it the desired state that I have e.g. 300 outgoing messages (taken from azure event hub metrics) even though I just handled only one event? I am curious how to consume events only when the previous one was fully handled and checkpointed stored.
Otherwise, if more than one message is consumed by the consumer and the checkpoint is set after the on_event callback is finished (on_event callback takes 10 s in my case), then adding another consumer to the same consumer group and rebalancing partition ownership cause consuming many duplicates.
I am aware of that window where duplications might happen but I would like to have them as few as possible.
FYI I use python sync consumer.