RabbitMQ.Client.Exceptions.AlreadyClosedException #1561
-
Publisher connection seems to be switched to some invalid state. Since then I was getting an exception on the each publish attempt:
It happened in very random ordinary moment. No high load, no idling, just nothing special. Restarting publisher helped, consumer was okay, broker was okay. In the broker log at the moment of the first problem occurrence: Any ideas what does it mean? Do we have something like error id descriptions (for code = 200)? Any ideas how to properly recover from such situations in the publisher code? |
Beta Was this translation helpful? Give feedback.
Replies: 1 comment 2 replies
-
We do not guess in this community. Either provide more complete logs and relevant snippets of your code, or direct your question to a fortune teller. "Timeout waiting for acks" suggests you may be using a "wait for confirms or die" kind of API functions , a.k.a. "publish-and-wait", which is inefficient and often unnecessary.
is fairly specific. If a channel has to terminate for any reason, whether it was cleanly closed or due to a channel-level protocol exception, and it had a pending publisher confirm ack on it, it will log this warning because it might (but won't necessarily, it depends on how your publishers handle retries) lead to the loss of that published and unconfirmed message. |
Beta Was this translation helpful? Give feedback.
We do not guess in this community. Either provide more complete logs and relevant snippets of your code, or direct your question to a fortune teller.
"Timeout waiting for acks" suggests you may be using a "wait for confirms or die" kind of API functions , a.k.a. "publish-and-wait", which is inefficient and often unnecessary.
is fairly specific. If a channel has to terminate for any reason, whether it was cleanly closed or due to a channel-level protocol exception, and it had a pending publisher confirm ack on it, it will log this warning because it might (but won't necessarily, i…