HomePhabricator

incremental-repack: do not repack largest 2 files if nothing else to do

Authored by singhsrb.

Description

incremental-repack: do not repack largest 2 files if nothing else to do

Summary:
The incremental repacking currently repacks the 2 biggest files if it
doesn't find anything else to do. This was perhaps done to converge to a single
pack file as soon as possible. However, the 2 biggest files can be huge and
this leads to a large repack. Moreover, the resulting pack file after this
repacking is then considered for a subsequent incremental repacking which is
fairly huge as well. Therefore, with the current setup, we can potentially end
up doing 2 big incremental repacks. After this change, we will have just one
incremental repack which is almost equally costly to get to the same state.

Test Plan: Ran all the tests.

Reviewers: #fbhgext, durham

Reviewed By: #fbhgext, durham

Differential Revision: https://phab.mercurial-scm.org/D1596

Details

Committed
singhsrbDec 5 2017, 4:35 PM
Reviewer
Restricted Project
Differential Revision
D1596: incremental-repack: do not repack largest 2 files if nothing else to do
Parents
rFBHGXccb7df352f67: distutils_rust: teach distutils to look for windows libs
Branches
Unknown
Tags
Unknown