diff options
author | Jeff King <peff@peff.net> | 2019-07-31 01:39:27 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2019-07-31 13:15:51 -0700 |
commit | 25575015cafbbb8554ff6ac82236c2a062055ae6 (patch) | |
tree | d61b68d0810731759e506518bd84afec461188c8 /t/t7700-repack.sh | |
parent | t7700: clean up .keep file in bitmap-writing test (diff) | |
download | tgif-25575015cafbbb8554ff6ac82236c2a062055ae6.tar.xz |
repack: silence warnings when auto-enabled bitmaps cannot be built
Depending on various config options, a full repack may not be able to
build a reachability bitmap index (e.g., if pack.packSizeLimit forces us
to write multiple packs). In these cases pack-objects may write a
warning to stderr.
Since 36eba0323d (repack: enable bitmaps by default on bare repos,
2019-03-14), we may generate these warnings even when the user did not
explicitly ask for bitmaps. This has two downsides:
- it can be confusing, if they don't know what bitmaps are
- a daemonized auto-gc will write this to its log file, and the
presence of the warning may suppress further auto-gc (until
gc.logExpiry has elapsed)
Let's have repack communicate to pack-objects that the choice to turn on
bitmaps was not made explicitly by the user, which in turn allows
pack-objects to suppress these warnings.
Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/t7700-repack.sh')
-rwxr-xr-x | t/t7700-repack.sh | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/t/t7700-repack.sh b/t/t7700-repack.sh index 8d9a358df8..54f815b8b9 100755 --- a/t/t7700-repack.sh +++ b/t/t7700-repack.sh @@ -250,4 +250,15 @@ test_expect_success 'no bitmaps created if .keep files present' ' test_must_be_empty actual ' +test_expect_success 'auto-bitmaps do not complain if unavailable' ' + test_config -C bare.git pack.packSizeLimit 1M && + blob=$(test-tool genrandom big $((1024*1024)) | + git -C bare.git hash-object -w --stdin) && + git -C bare.git update-ref refs/tags/big $blob && + git -C bare.git repack -ad 2>stderr && + test_must_be_empty stderr && + find bare.git/objects/pack -type f -name "*.bitmap" >actual && + test_must_be_empty actual +' + test_done |