-
Notifications
You must be signed in to change notification settings - Fork 151
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
nack/reject message to 'x-delayed-message' exchange with given delay time works only for first message #52
Comments
Do you have a script that we can use to reproduce? |
@michaelklishin Thanks on fast response. Can you use gist from question? I updated gist to contain few console.logs:
|
@michaelklishin please let me know if i can help you in any way reproducing the problem |
We will get to this issue as time permits, thank you. |
Any news regarding this issue? Looks like this is very old issue |
The update is that this plugin will be replaced by a different one. There is no ETA or delivery promises of any kind. This is open source software, so those who need a short term solution are welcome to contribute it. |
@michaelklishin is there a chance there are any updates regarding the replacement plugin? |
What i'm trying to do with the plugin is to nack/reject message to dead letter exchange (which has a type equal to
'x-delayed-message'
) if there was anyrecoverableError
during message processing.Only first nacked/rejected message that gets to dead letter exchange will be published to given queue after
x-delay
time, all other succeeding messages that will be nacked/rejected will be published immediately when they arrive at dead letter exchange.From my debugging what i can see is that plugin will set negative 'x-delay' to all other messages except first one. Not quite sure is this a bug nor plugin doesn't play good with nack/reject messages or this is intended behaviour?
If it is intended behaviour how one can implement described scenario with plugin?
What can be solution, as it seems to me, is to explicitly (instead nack/reject) publish to dead letter exchange with (re) setting
x-delay
on every publish, but why to throw away comfort that comes with.nack()
or.reject()
.Gist: https://gist.github.com/srkimir/7d20576fa5b47dcd7b21f1950ace8cf9
Topology: https://docs.google.com/drawings/d/1hlBHwFT4Xm4Nb6B0tEv4nEldTqgzDqUoNl_M3QTwuB4
The text was updated successfully, but these errors were encountered: