From 678fb3c2ba03a4a284620c039717c0d94dd6106a Mon Sep 17 00:00:00 2001 From: "Eric Wong (Contractor, The Linux Foundation)" Date: Wed, 4 Apr 2018 21:24:59 +0000 Subject: v2: support incremental indexing + purge This is important for people running mirrors via "git fetch", as they need to be kept up-to-date. Purging is also now supported in mirrors. The short-lived "--regenerate" option is gone and is now implicitly enabled as a result. It's still cheap when article number regeneration is unnecessary, as we track the range for each git repository. --- script/public-inbox-convert | 2 +- script/public-inbox-index | 15 +++------------ 2 files changed, 4 insertions(+), 13 deletions(-) (limited to 'script') diff --git a/script/public-inbox-convert b/script/public-inbox-convert index 56ac44f5..9aa27814 100755 --- a/script/public-inbox-convert +++ b/script/public-inbox-convert @@ -125,6 +125,6 @@ my $mm = $old->mm; $mm->{dbh}->sqlite_backup_to_file("$new_dir/msgmap.sqlite3") if $mm; $v2w->done; if ($index) { - $v2w->reindex; + $v2w->index_sync; $v2w->done; } diff --git a/script/public-inbox-index b/script/public-inbox-index index 52d6ba70..73f88ac6 100755 --- a/script/public-inbox-index +++ b/script/public-inbox-index @@ -23,12 +23,12 @@ if ($@) { } my $reindex; -my $regen; +my $prune; my $jobs = undef; my %opts = ( '--reindex' => \$reindex, - '--regenerate' => \$regen, '--jobs|j=i' => \$jobs, + '--prune' => \$prune, ); GetOptions(%opts) or die "bad command-line args\n$usage"; die "--jobs must be positive\n" if defined $jobs && $jobs <= 0; @@ -115,16 +115,7 @@ sub index_dir { } } } - my $mm = $repo->mm; - my (undef, $max) = $mm->minmax if $mm; - if (defined($max) && !$reindex && !$regen) { - die -"v2 inboxes may only use --reindex and/or --regenerate once\n". -"msgmap.sqlite3 is initialized\n"; - } - - $v2w->reindex($regen); - $v2w->done; + $v2w->index_sync({ reindex => $reindex, prune => $prune }); } else { my $s = PublicInbox::SearchIdx->new($repo, 1); $s->index_sync({ reindex => $reindex }); -- cgit v1.2.3-24-ge0c7