-
-
Notifications
You must be signed in to change notification settings - Fork 4.1k
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
Allow to run occ preview:repair in parallel #22911
Allow to run occ preview:repair in parallel #22911
Conversation
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
I would suggest
for the lock messages. More information: https://symfony.com/doc/current/console/verbosity.html |
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
Done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure
@MorrisJobke backport? |
To 20 yes. |
/backport to stable20 |
Wit this
occ preview:repair
can be run multiple times in the same instance and will share load between those. It will still process the directory as a whole, but skip locked folders. In this way the processes can run on multiple machines to avoid some bottlenecks like network IO.The output for one process out of 3 parallel tasks then might look like this:
One can see that two folders are locked and skipped and the third one is processed.
Regarding the timing it seems to be harder to judge, but the overall load is less and the total user time is 9.7s (single process) vs 12.2s (3 processes) and the total system time is 2.3s vs 3.5s (3 processes). It completed after 21s (single process) cs 10 seconds (3 processes). The overhead due to the additional skips can be seen, but it can be distributed across multiple machines or even more processes.
Raw timings: