-
-
Notifications
You must be signed in to change notification settings - Fork 273
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
RabbitMQ: Queues not recreated in all circumstances #628
Comments
Upon further investigation, it looks like what's happening is:
I would have expected an |
@ssilve1989 Thanks for the repro and thorough investigation. As of now i probably don't have that much time free to provide a fix for this as it might be also an issue with the underlying library or just how we setup/configure the connection manager. |
Implementing a fix would be possible if the My naive workaround atm is to patch the I'll see if I can figure something out with |
@ssilve1989 Thank you! |
So as pointed out here amqp-node/amqplib#736 it looks like we'd need to respond to a |
Nice this is a great discovery! Do you have an interest in helping to add this functionality to the library? |
@WonderPanda Yea, I'm looking into adding just a similar option like the other error handlers as |
I have something started here but haven't throughly tested it yet. I don't think I'll have time to test it until maybe the end of the week. I'm not sure this approach is suitable though for cases where the consumer wants the library to auto-recreate/subscribe to the queue again, since providing the channel/queue like this doesn't enable them to bind back to the decorated methods right? |
This issue is stale because it has been open for 30 days with no activity. |
As originally outlined here: #239 with an updated comment by me #239 (comment)
There is an issue with queue creation when connected to a Rabbit cluster.
I can consistently reproduce the following case:
N - replicas on that node
These replicas when reconnected to rabbit, as evidenced by a k8s health check and checking
managedConnection.isConnected()
never re-create a new queue binding for the service.Interestingly enough, if you restart all nodes in the rabbit cluster in rolling restart fashion, when the final node has restarted then all queues will be recreated, but until then each replica when reconnecting does not make any new queues.
The text was updated successfully, but these errors were encountered: