about summary refs log tree commit homepage
path: root/lib/PublicInbox/SearchIdx.pm
diff options
context:
space:
mode:
authorEric Wong <e@80x24.org>2021-06-23 07:14:20 -0400
committerEric Wong <e@80x24.org>2021-06-23 19:24:48 +0000
commit4d594e98063aaad1ce9a90709af7edc5c44a0163 (patch)
tree50e8ac2cb3b74405ae66bf022f10001fe9c69d32 /lib/PublicInbox/SearchIdx.pm
parent2016078cefa7e4438217e54bb0421a5d5f0b151f (diff)
downloadpublic-inbox-4d594e98063aaad1ce9a90709af7edc5c44a0163.tar.gz
This allows us to simplify callers throughout, and exceptions are
can no longer be silently hidden.  MiscSearch now uses xap_terms
for looking up eidx_key terms for a code reduction.

We also simplify LeiStore->_msg_kw for runtime use by moving the
MsetIterator handling into t/lei_store.t test case.
Diffstat (limited to 'lib/PublicInbox/SearchIdx.pm')
-rw-r--r--lib/PublicInbox/SearchIdx.pm5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/PublicInbox/SearchIdx.pm b/lib/PublicInbox/SearchIdx.pm
index f553eda6..65764cc8 100644
--- a/lib/PublicInbox/SearchIdx.pm
+++ b/lib/PublicInbox/SearchIdx.pm
@@ -435,8 +435,9 @@ sub add_xapian ($$$$) {
         if (my $old = $merge_vmd ? _get_doc($self, $smsg->{num}) : undef) {
                 my @x = @VMD_MAP;
                 while (my ($field, $pfx) = splice(@x, 0, 2)) {
-                        my $vals = xap_terms($pfx, $old);
-                        $doc->add_boolean_term($pfx.$_) for keys %$vals;
+                        for my $term (xap_terms($pfx, $old)) {
+                                $doc->add_boolean_term($pfx.$term);
+                        }
                 }
         }
         $self->{xdb}->replace_document($smsg->{num}, $doc);