-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Use commit graph files for listing pages #7314
Conversation
Signed-off-by: Filip Navara <[email protected]>
Signed-off-by: Filip Navara <[email protected]>
Codecov Report
@@ Coverage Diff @@
## master #7314 +/- ##
==========================================
+ Coverage 41.26% 41.26% +<.01%
==========================================
Files 466 467 +1
Lines 63258 63291 +33
==========================================
+ Hits 26101 26116 +15
- Misses 33747 33760 +13
- Partials 3410 3415 +5
Continue to review full report at Codecov.
|
So we don't actually get git to make and store commit graphs at present - Do you think we should be setting |
@lunny's PR linked in the description actually sets the git settings to create the commit graphs. The intermediate commits in this PR contain code that can build it too but I didn't clean it up. The actual code that landed in go-git makes it much easier to produce the commit-graph files because it no longer needs one to build it in hierarchical order. |
So can we build a commitgraph without #7313? We have a lot of users who are on old gits and it would be good if they could get some improvement from this. |
Yes, absolutely, if we decide it's worth the effort. I will be happy to provide the code for doing so. |
Maybe we should have a |
I think this should be 1.9 |
It should be fairly safe to land in 1.9 but ultimately it's up to your decision. We were running various iterations of this code in production since last December. This last one has been deployed to our servers for close to a month with no reported failure. |
I'm gonna change it to 1.9, if anyone disagrees please change back. |
return cgobject.NewGraphCommitNodeIndex(index, r.gogitRepo.Storer), file | ||
} | ||
} | ||
|
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.
If err is not file not exist error, we should return it but not hide it.
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.
I don't think we should return it. This is quite graceful error handling with fallback to the regular git object storage. Worst case is a performance penalty but it will still yield the same results.
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.
OK. But at least, we should know commit graph is not using since something wrong. We need an error log or warning log if commitgraph file exist but load failed. That will be helpful when we investigate errors.
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.
@lunny is my change to lines 30-33 acceptable?
@filipnavara @zeripath Thanks! |
* Experimental support for git commit graph files and bloom filter index Signed-off-by: Filip Navara <[email protected]> * Force vendor of commitgraph Signed-off-by: Filip Navara <[email protected]> * Remove bloom filter experiment and debug prints * Remove old code for building commit graphs * Remove unused function * Remove mmap usage * gofmt * sort vendor/modules.txt * Add copyright header and log commit-graph error
Complements #7313, supercedes #6701.
/cc @lunny