user/dev discussion of public-inbox itself
 help / color / mirror / code / Atom feed
From: Eric Wong <e@80x24.org>
To: meta@public-inbox.org
Subject: [PATCH] lei_search: ignore Resent-Message-ID for indexing
Date: Sun,  4 Apr 2021 22:38:07 +0500	[thread overview]
Message-ID: <20210404173807.29807-1-e@80x24.org> (raw)

It currently conflicts with the way OverIdx and SearchIdx
index messages, ultimately leading to violating a NOT NULL
constraint on id2num.id in over.sqlite3.

We may allow searching Resent-* fields separately, though I'm
not sure how useful it'll be.
---
 lib/PublicInbox/LeiSearch.pm | 5 ++---
 t/lei-import.t               | 1 +
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/PublicInbox/LeiSearch.pm b/lib/PublicInbox/LeiSearch.pm
index 148aa185..082176e7 100644
--- a/lib/PublicInbox/LeiSearch.pm
+++ b/lib/PublicInbox/LeiSearch.pm
@@ -8,7 +8,7 @@ use v5.10.1;
 use parent qw(PublicInbox::ExtSearch);
 use PublicInbox::Search qw(xap_terms);
 use PublicInbox::ContentHash qw(content_digest content_hash);
-use PublicInbox::MID qw(mids mids_in);
+use PublicInbox::MID qw(mids mids_for_index);
 
 # get combined docid from over.num:
 # (not generic Xapian, only works with our sharding scheme)
@@ -54,8 +54,7 @@ sub content_key ($) {
 	my ($eml) = @_;
 	my $dig = content_digest($eml);
 	my $chash = $dig->clone->digest;
-	my $mids = mids_in($eml,
-			qw(Message-ID X-Alt-Message-ID Resent-Message-ID));
+	my $mids = mids_for_index($eml);
 	unless (@$mids) {
 		$eml->{-lei_fake_mid} = $mids->[0] =
 				PublicInbox::Import::digest2mid($dig, $eml, 0);
diff --git a/t/lei-import.t b/t/lei-import.t
index 9bb4e1fa..8635df5a 100644
--- a/t/lei-import.t
+++ b/t/lei-import.t
@@ -83,6 +83,7 @@ is_deeply($res->[0]->{kw}, ['seen'], "`seen' keywords set");
 $eml_str = <<'EOM';
 Subject: draft message with no sender
 References: <y@y>
+Resent-Message-ID: <resent-test@example>
 
 No use for a name
 EOM

                 reply	other threads:[~2021-04-04 17:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://public-inbox.org/README

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210404173807.29807-1-e@80x24.org \
    --to=e@80x24.org \
    --cc=meta@public-inbox.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/public-inbox.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).