-
Notifications
You must be signed in to change notification settings - Fork 131
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
Mass-publishing messages results in QAbstractSocket::UnconnectedState #57
Comments
The first error message is this one:
|
@J4nsen sounds like maybe rabbitmq is cutting off the connection, is there anything in the logs on the side of the equation? |
I got similar problem. When i send a lot of large messages RebbitMq drops connection. |
Hey, sorry for not reporting back. I implemented the local queue/rate limiter which I talked about in my first post and didn't encounter the hang again :/. If I find the time, I will try to reproduce the original problem. |
Hi, I have also bumbed into this issue, and it is the client which is closing connection: rabbit logs: This workaround seems to be working: Note: specifying -1 seems to mean "wait forever when sending a frame". Lower than -1 means, do not wait. Default seems to be 1000ms which seems to be not enough when mass publishing. |
Hi,
I'm emitting a lot of JSON messages from a thread (QAmqpClient runs in the main thread). About 100k-500k in less than 10s. The first 50k messages are correctly received by the exchange. After that the connection to RabbitMQ gets disconnected:
Disabling confirms delays the problem a little bit, and waitForConfirms + enabling confirms results in a segmentation fault (Have not analyzed this further).
This is my class which publishes the messages: https://gist.github.com/J4nsen/40da0d436e4f8e00dbdbb5cc0860b20f
What is the best way to fix this problem? Implement a local queue/rate limiter and give the main thread some time for its main event loop? Or should I investigate in segfault with waitForConfirms?
Thanks,
Jan
The text was updated successfully, but these errors were encountered: