}
# try to find the URL with Xapian to avoid forking
- my $doc_id = eval { $s->find_first_doc_id('XMID' . $mid) };
+ my $doc_id = eval { $s->find_first_doc_id('Q' . $mid) };
if ($@) {
# xapian not configured properly for this repo
push @nox, $other;
);
my %bool_pfx_external = (
- mid => 'XMID', # Message-ID (full/exact)
+ mid => 'Q', # Message-ID (full/exact), this is mostly uniQue
);
my %prob_prefix = (
my ($self, $mid) = @_;
my $skel = $self->{skel} or return lookup_message($self, $mid);
$mid = mid_clean($mid);
- my $term = 'XMID' . $mid;
+ my $term = 'Q' . $mid;
my $smsg;
my $beg = $skel->postlist_begin($term);
if ($beg != $skel->postlist_end($term)) {
my ($self, $mid) = @_;
$mid = mid_clean($mid);
- my $doc_id = $self->find_first_doc_id('XMID' . $mid);
+ my $doc_id = $self->find_first_doc_id('Q' . $mid);
my $smsg;
if (defined $doc_id) {
# raises on error:
my $xdb = $self->{xdb};
# XXX retry_reopen isn't necessary for V2Writable, but the PSGI
# interface will need it...
- my ($head, $tail) = $self->find_doc_ids('XMID' . $mid);
+ my ($head, $tail) = $self->find_doc_ids('Q' . $mid);
for (; $head->nequal($tail); $head->inc) {
my $doc_id = $head->get_docid;
my $doc = $xdb->get_document($doc_id);
require PublicInbox::Git;
use constant {
- MAX_MID_SIZE => 244, # max term size - 1 in Xapian
+ MAX_MID_SIZE => 244, # max term size (Xapian limitation) - length('Q')
PERM_UMASK => 0,
OLD_PERM_GROUP => 1,
OLD_PERM_EVERYBODY => 2,
}
$smsg = PublicInbox::SearchMsg->new($mime);
my $doc = $smsg->{doc};
- $doc->add_term('XMID' . $mid);
+ $doc->add_term('Q' . $mid);
my $subj = $smsg->subject;
my $xpath;
$mid = mid_clean($mid);
eval {
- my ($head, $tail) = $self->find_doc_ids('XMID' . $mid);
+ my ($head, $tail) = $self->find_doc_ids('Q' . $mid);
if ($head->equal($tail)) {
warn "cannot remove non-existent <$mid>\n";
}
my $tid = $self->next_thread_id;
my $doc = Search::Xapian::Document->new;
- $doc->add_term('XMID' . $mid);
+ $doc->add_term('Q' . $mid);
$doc->add_term('G' . $tid);
$doc->add_term('T' . 'ghost');
}
my $doc = $smsg->{doc};
$doc->add_term('XPATH' . $xpath) if defined $xpath;
- $doc->add_term('XMID' . $mid);
+ $doc->add_term('Q' . $mid);
PublicInbox::SearchIdx::add_values($doc, $values);
$doc->set_data($doc_data);
$smsg->{ts} = $ts;
} elsif (my $rv = $self->{mid}) {
$rv;
} else {
- $self->{mid} = _get_term_val($self, 'XMID', qr/\AXMID/) ||
+ $self->{mid} = _get_term_val($self, 'Q', qr/\AQ/) ||
$self->_extract_mid;
}
}