]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/V2Writable.pm
v2writable: drop unused $last_commits var
[public-inbox.git] / lib / PublicInbox / V2Writable.pm
index 1ee19b2108e0e1783cf769310f06a32ddcff0b7b..a6f044a898b34e869af480eeac848e532657a236 100644 (file)
@@ -777,6 +777,9 @@ sub reindex_oid {
                $git->cleanup;
                $mm_tmp->atfork_prepare;
                $self->done; # release lock
+
+               # TODO: print progress info, here
+
                # allow -watch or -mda to write...
                $self->idx_init; # reacquire lock
                $mm_tmp->atfork_parent;
@@ -844,6 +847,7 @@ $range
 
 sub index_prepare {
        my ($self, $opts, $epoch_max, $ranges) = @_;
+       my $pr = $opts->{-progress};
        my $regen_max = 0;
        my $head = $self->{-inbox}->{ref_head} || 'refs/heads/master';
        for (my $i = $epoch_max; $i >= 0; $i--) {
@@ -858,10 +862,14 @@ sub index_prepare {
                $ranges->[$i] = $range;
 
                # can't use 'rev-list --count' if we use --diff-filter
+               $pr->("$i.git counting changes\n\t$range ... ") if $pr;
+               my $n = 0;
                my $fh = $git->popen(qw(log --pretty=tformat:%H
                                --no-notes --no-color --no-renames
                                --diff-filter=AM), $range, '--', 'm');
-               ++$regen_max while <$fh>;
+               ++$n while <$fh>;
+               $pr->("$n\n") if $pr;
+               $regen_max += $n;
        }
        \$regen_max;
 }
@@ -957,7 +965,6 @@ sub index_sync {
                        --no-notes --no-color --no-abbrev --no-renames);
 
        # work backwards through history
-       my $last_commit = [];
        for (my $i = $epoch_max; $i >= 0; $i--) {
                my $git_dir = git_dir_n($self, $i);
                die "already reindexing!\n" if delete $self->{reindex_pipe};