Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stream stucks if the server closes the channel #736

Closed
simpadjo opened this issue Sep 15, 2022 · 0 comments · Fixed by #737
Closed

Stream stucks if the server closes the channel #736

simpadjo opened this issue Sep 15, 2022 · 0 comments · Fixed by #737

Comments

@simpadjo
Copy link
Contributor

Assume that the program forgets to acknowledge the message (or processing of the message takes too long).
After a certain timeout (30 minutes by default) the server closes the channel:

https://www.rabbitmq.com/consumers.html

If a consumer does not ack its delivery for more than the timeout value (30 minutes by default), its channel will be closed with a PRECONDITION_FAILED channel exception. The error will be [logged](https://www.rabbitmq.com/logging.html) by the node that the consumer was connected to. All outstanding deliveries on that channel, from all consumers, will be [requeued](https://www.rabbitmq.com/confirms.html#automatic-requeueing).

This error will be even propagated to the client but the stream doesn't handle it and will just be idle forever.
I guess that if AMQPChannel#value.isOpen == false, the stream must be interrupted.

Will it be a correct behavior? If yes - I can try to fix it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant