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

Minion pooling optimizations #336

Merged
merged 2 commits into from
Sep 16, 2024

Conversation

Dany9966
Copy link
Contributor

Only fetch minion pool events and progress updates when actually needed

This patch will make sure that getting minion pool events and progress updates
will only occur when actually printing them out to the UI or CLI, and
excluding them otherwise.

Fix cartesian product on minion pool fetching

When multiple joinedloads were queried, it resulted in a cartesian product
list of rows. Switching to selectinload, while performing multiple queries
to the DB server, will make sure that the minimum amount of rows get returned
from the DB. This fixes hangups when fetching progress updates and events of
long-running minion pools.

This patch will make sure that getting minion pool events and progress updates
will only occur when actually printing them out to the UI or CLI, and
excluding them otherwise.
When multiple `joinedload`s were queried, it resulted in a cartesian product
list of rows. Switching to `selectinload`, while performing multiple queries
to the DB server, will make sure that the minimum amount of rows get returned
from the DB. This fixes hangups when fetching progress updates and events of
long-running minion pools.
@Dany9966 Dany9966 merged commit fd011f0 into cloudbase:master Sep 16, 2024
4 checks passed
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

Successfully merging this pull request may close these issues.

1 participant