|
I have a problem with If a consumer fails to process one message, processing of all other messages with other keys is also stalled. Including the other consumers of the subscription (there are 10-15 of them). On a processing fail, I don’t send a nack in order not to break the message order. The consumer just has a minute to try to process other keys, and then restarted. I was able to reproduce similar behaviour in test. I produce 1000 messages with 4 different keys. Only one of the 1000 messages fails to be processed. An individual ack is performed successfully from the consumer point of view, even after the corrupted message fails. But, apparently, the acks are not “commited” and discarded by the broker. Interesting thing is that if I produce messages with some time gap (say, 1 second), the corrupted message doesn’t block the further messages. So, I suspect some batching be the cause. However, as I said, I acknowledge individually. What could cause the blocking of the all the keys? I have Pulsar 2.8.1, but the same behaviour is also observed on 3.0.0. You can find the fragment of topic-stats below. |
Replies: 1 comment
|
The issue was batch ack wasn't enabled on the consumer side and the broker. |
The issue was batch ack wasn't enabled on the consumer side and the broker.