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

Publisher confirms #18

Open
bmatson opened this issue Dec 15, 2016 · 3 comments
Open

Publisher confirms #18

bmatson opened this issue Dec 15, 2016 · 3 comments

Comments

@bmatson
Copy link

bmatson commented Dec 15, 2016

I've been reviewing your code with the idea of possibly using it in production, however it appears that there is an issue with sending a message, the Exchange.send function (and the underlying publish method) don't return promises, so there is no way for the user of the app to confirm that the message they think they sent actually got to the broker.

If I'm reading the code correctly, if the code looses connection to the broker it will try to reconnect and these "in flight" messages may get sent, but in the event of a long outage and a restart of the app these messages will just get lost. Since there is no promise for the sender to wait on, there is also no way of limiting the number of messages stuck waiting on getting published

@theironcook
Copy link

I've found the same issue. If my server app loses the connection to rabbit I don't get any errors / warnings etc. Messages are lost with no notification at all.

@prem-singh-1
Copy link

Did anyone find a solution for this one? I am facing the same issue. Is there any alternative for this repo?

@bmatthieuedn
Copy link

Use createConfirmChannel instead of createChannel in Queue._initialize and Exchange._initialize implementations

kstasik added a commit to kstasik/amqp-ts that referenced this issue Mar 11, 2021
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

No branches or pull requests

4 participants