Message ID | cover.1629452412.git.ps@pks.im (mailing list archive) |
---|---|
Headers | show |
Series | Speed up mirror-fetches with many refs | expand |
On 8/20/2021 6:08 AM, Patrick Steinhardt wrote: ... > As it turns out, many of the issues are again caused by loading and > dereferencing refs. This patch series thus mostly focusses on optimizing > the patterns there, where the biggest win is to opportunistically load > refs via commit-graphs. You caught my attention at "commit-graph" and I found your use of them to be interesting. You strike a balance in checking the commit-graph when it is likely to be helpful, and skip the commit-graph when it is not. (For example, PATCH 2 is unlikely to benefit from checking the commit-graph at that point, because we are looking for objects that were just downloaded.) I read all the patches and checked the full context of the functions to see if there were any issues, but found none. My only comments are about the case of many annotated tags (do we slow down?) and some nitpicks. Thanks, -Stolee
Patrick Steinhardt <ps@pks.im> writes: > I've taken another look at fetches in the context of repos with a huge > amount of refs. This time around, I've taken a look at mirror fetches: > in our notorious repo with 2.3M refs, these mirror fetches can take up > to several minutes of time even if there are no changes at all. I notice that 4/6 (and no other patch) is not signed-off and wonder if there is a reason (e.g. you are not so comfortable with the idea behind the step or the implementation) or a simple oversight? > Note that this series depends on ps/connectivity-optim and thus only > applies on top of next. It seems that the dependency of this series is not just 'master' plus 'ps/connectivity-optim' but some more stuff from 'next'. I expact that topics that have been cooking in 'next' during the previous cycle will graduate to 'master' early next week, so perhaps it is easier to handle this kind of "depends on some stuff in 'next'" topics after that happens. Thanks.