-
Notifications
You must be signed in to change notification settings - Fork 781
parallelize creation of file history cache for individual files #3636
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
Conversation
opengrok-indexer/src/main/java/org/opengrok/indexer/history/FileHistoryCache.java
Outdated
Show resolved
Hide resolved
Nice work! Looks good besides the failing test. |
The failing test is actually a problem. Given that |
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.
Nice job! All comments are just nitpicks, feel free to ignore them :)
opengrok-indexer/src/main/java/org/opengrok/indexer/history/FileHistoryCache.java
Show resolved
Hide resolved
opengrok-indexer/src/main/java/org/opengrok/indexer/history/History.java
Show resolved
Hide resolved
opengrok-indexer/src/main/java/org/opengrok/indexer/history/History.java
Outdated
Show resolved
Hide resolved
opengrok-indexer/src/test/java/org/opengrok/indexer/history/HistoryTest.java
Outdated
Show resolved
Hide resolved
opengrok-indexer/src/main/java/org/opengrok/indexer/history/History.java
Show resolved
Hide resolved
Checked that the tags are displayed normally in the UI after recreating the history cache from scratch. |
This change parallelizes the creation of file history cache for individual files, mimicking what is already done for renamed files.
On my laptop with i7-8665U (4 cores) and built in SSD I am seeing some decent speedup (6 vs 9 minutes) when creating history cache for the OpenSSL Git repository (renamed files on, merge commits on).
There is some potential for further speedup - the directories are still created sequentially and the process should avoid duplications.