-
-
Notifications
You must be signed in to change notification settings - Fork 245
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
changing queueOptions will crash next restart #348
Comments
These types of situations are tricky for a general purpose library because what might be appropriate for your scenario (in terms of delete + recreate) could be terrible for someone else. I think that the best option (although it increases API surface) is to have an additional option inside I'd definitely be open to accepting a PR that gives users more flexibility in this area. |
WDYT about this :
|
@christopheblin Can you try the new release version, there was a PR #349 that introduced this feature so let me know if that addresses your concerns |
@underfisk I am the author of the PR so yes it address my concerns :) I dont have much time to upgrade the libs in our apps right now, but next app will definitively use the new I'll close this issue, feel free to reopen for any concerns you may have |
Hi @christopheblin, I still get an error even though I've replaced the error handler with
|
Let's say you have a subscriber like this
You push the app to prod, everything is fine (exchange created if it does not exist, queue created if it does not exist, binding betwen queue and excahnge)
now, you change an option like deadLetterExchange
The app will not start :
I know this is the expected behavior from RabbitMq perspective (i.e multiple consumers may be bound to the queue so it is a bit unsafe to delete+recreate the queue automatically during assertQueue)
However, do you think this is the expected behavior with
@RabbitSubscribe
?I mean, if I explicitly specify the queue, it's because I want the same queue for all running replicas ... (besides, options do not really influence the running behavior of the queue from consumer point of view)
Will you accept a PR where we catch the failure of assertQueue to call deleteQueue + assertQueue ?
In any case, what do you suggest as a workaround to detect the situation automatically and to automatically delete the related queues before this lib calls assertQueue ?
The text was updated successfully, but these errors were encountered: