Open nffdiogosilva opened 1 year ago
If you add to print channel status like message.channel.is_closed
you will notice that it returns True
print(f"Trying to ack message... (it will stay stuck here), is_closed: {message.channel.is_closed}")
await message.ack()
Comparing with others clients (for different languages) there is should be something like AlreadyClosedError
for trying to write to closed channel but not deadlock (hung).
There are bunch of issues in underlying layer aiormq
which might be root cause of this problem:
Hello,
I have found what seems to be similar issues talking about this error (#312, #379) but since they haven't been addressed, I'll leave my take here.
Basically, while consuming a message, if a connection is lost, even though a reconnect occurs, the message won't be able to be acknowledged or rejected. It gets stuck. And it will be indeterminately
unacked
while the consumer is running.Script to reproduce issue:
Logs generated:
Any ideas?