X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=blobdiff_plain;f=lib%2FPublicInbox%2FSearchIdx.pm;h=bc003c6ca88be15b58ae96e28ee0e2cb700fd151;hp=1142ca7a0f4c83a6aa4103edc79d91bd04944e5a;hb=5d91adedf5f33ef1cb87df2a86306ddf370b4f8d;hpb=83425ef12e4b65cdcecd11ddcb38175d4a91d5a0 diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm index 1142ca7a..bc003c6c 100644 --- a/lib/PublicInbox/SearchIdx.pm +++ b/lib/PublicInbox/SearchIdx.pm @@ -157,6 +157,10 @@ sub add_message { # it will also clobber any existing regular message $doc_id = $smsg->{doc_id}; $old_tid = $smsg->thread_id; + + # no need to remove_term for old_tid, we use a new + # doc to replace the old one when reindexing: + $old_tid = undef if $self->{reindex}; } $smsg = PublicInbox::SearchMsg->new($mime); my $doc = $smsg->{doc}; @@ -464,7 +468,7 @@ sub _git_log { sub _index_sync { my ($self, $opts) = @_; my $tip = $opts->{ref} || 'HEAD'; - my $reindex = $opts->{reindex}; + $self->{reindex} = $opts->{reindex}; my ($mkey, $last_commit, $lx, $xlog); $self->{git}->batch_prepare; my $xdb = _xdb_acquire($self); @@ -474,7 +478,7 @@ sub _index_sync { $mkey = 'last_commit'; $last_commit = $xdb->get_metadata('last_commit'); $lx = $last_commit; - if ($reindex) { + if ($self->{reindex}) { $lx = ''; $mkey = undef if $last_commit ne ''; }