-
Notifications
You must be signed in to change notification settings - Fork 58
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
Reduce RabbitMQ prefetch_count
for mula and more AMQP exception handling
#1332
Reduce RabbitMQ prefetch_count
for mula and more AMQP exception handling
#1332
Conversation
My guess is that prefetch of 100 should be more than enough, because as far as I understand it, it would mean that the scheduler would be processing 100 messages at the same time before hitting that limit. |
@dekkers My understanding is that it is the size of the message buffer on the client side. The longer the handling of messages takes and the more consumers we have, the lower it could/should be. |
I added the following to the ticket: EDIT:
Perhaps adding the prefetch count wouldn't hurt though since it is a tuning parameter to the system. We could also consider adding a rabbitmq config file as well to read from at one point. |
Checklist for QA:
What works:
What doesn't work:
|
@Darwinkel Possible fix pushed! |
Nice, I can't reproduce the issue anymore which is good. Could somebody else verify? |
prefetch_count
for mula and more AMQP exception handling
Will try as well |
Haven't seen any errors on my part and seems to be working as intended. I'll keep it running for a while. |
Changes
First check the Rabbitmq connection in Bytes before creating a new channel and set scheduler prefetch_count to 100 as a default. It is hard to estimate a sane default for this value as these issue occur sporadically, but it mostly depends on the throughput and amount of consumers. For the raw file events this will probably not be very high for most installs, but I find it hard to put a number to the scan profile mutation queue throughput (@jpbruinsslot ?).
@Darwinkel What was the consensus regarding putting default env vars in end-dist or env-default?
Issue link
Closes #1320
Proof
Here's a large list of dispatched tasks that turns into succeeded:
Code Checklist
Communication
.env
changes files if required and changed the.env-dist
accordingly.Checklist for code reviewers:
Copy-paste the checklist from the docs/source/templates folder into your comment.
Checklist for QA:
Copy-paste the checklist from the docs/source/templates folder into your comment.