+sub prepare_reindex ($$) {
+ my ($ibx, $reindex) = @_;
+ if ($ibx->{version} == 1) {
+ my $dir = $ibx->search->xdir(1);
+ my $xdb = Search::Xapian::Database->new($dir);
+ if (my $lc = $xdb->get_metadata('last_commit')) {
+ $reindex->{from} = $lc;
+ }
+ } else { # v2
+ my $v2w = $ibx->importer(0);
+ my $max;
+ $v2w->git_dir_latest(\$max) or return;
+ my $from = $reindex->{from};
+ my $mm = $ibx->mm;
+ my $v = PublicInbox::Search::SCHEMA_VERSION();
+ foreach my $i (0..$max) {
+ $from->[$i] = $mm->last_commit_xap($v, $i);
+ }
+ }
+}
+