]> Sergey Matveev's repositories - public-inbox.git/commitdiff
extsearchidx: avoid needless alternates rewrite in ALL.git
authorEric Wong <e@80x24.org>
Sat, 7 Nov 2020 10:56:52 +0000 (10:56 +0000)
committerEric Wong <e@80x24.org>
Sun, 8 Nov 2020 10:18:15 +0000 (10:18 +0000)
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

index 9d576adb844a770855ab69ecf9dd966224ea7908..9da425383ad6f2f2f7618d89326557e10d1d78b7 100644 (file)
@@ -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);