Description
When consumer is closed and transaction is not committed or rollbacked, the msg acked is not showed by delivering message but counted by delivering count.
We add closed consumer if any message is acked but not committed or rollbacked, and remove closed consumer if transaction is finished. In this way, delivering messages can be properly retained.
During calling hasCosnumer and getConsumerId, there is some race condition that emptyConsumerId is called causing following getConsumerId throws IllegalStateException. Also optimize it without extra effort.
Attachments
Issue Links
- links to