From ba071011a2bfa70f4ab8df87d186e33971ef85e1 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 7 Nov 2020 10:56:52 +0000 Subject: [PATCH] extsearchidx: avoid needless alternates rewrite in ALL.git As with fill_alternates in V2Writable, we do not need to update $GIT_DIR/objects/info/alternates if nothing is changed. --- lib/PublicInbox/ExtSearchIdx.pm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/PublicInbox/ExtSearchIdx.pm b/lib/PublicInbox/ExtSearchIdx.pm index 9d576adb..9da42538 100644 --- a/lib/PublicInbox/ExtSearchIdx.pm +++ b/lib/PublicInbox/ExtSearchIdx.pm @@ -380,8 +380,11 @@ sub idx_init { # similar to V2Writable $new{$line} = 1; push @new, $line; } - push @old, @new; - PublicInbox::V2Writable::write_alternates($info_dir, $mode, \@old); + if (scalar @new) { + push @old, @new; + my $o = \@old; + PublicInbox::V2Writable::write_alternates($info_dir, $mode, $o); + } $self->parallel_init($self->{indexlevel}); $self->umask_prepare; $self->with_umask(\&PublicInbox::V2Writable::_idx_init, $self, $opt); -- 2.44.0