After seeing Delivery tag %r confirmed %r was ignored (a warning log from aiormq, https://github.com/mosquito/aiormq/blob/master/aiormq/channel.py#L360), attempts to use Exchange.publish() will hang forever.
I suspect the confirmation futures (created here: https://github.com/mosquito/aiormq/blob/master/aiormq/channel.py#L661) for the hanging calls to publish() never get resolved despite the client having received a confirmation frame. The warning log seem to indicate the client attempted to resolve a (different?) future, which was already in a done state.
This usually happens under heavy load, I suspect a subtle concurrency bug in the way aio-pika uses aiormq, or a confirmation future handling issue within aiormq.
@mosquito Should I open a bug on the aiormq repo instead?