summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d95eee4)
Aside from the Message-Id ('Q'), these terms do not appear in
content and thus have no business contributing to the Xapian
document length.
Thanks-to Olly Betts for the tip on xapian-discuss
<
20180228004400.GU12724@survex.com>
if ($subj ne '') {
$xpath = $self->subject_path($subj);
$xpath = id_compress($xpath);
if ($subj ne '') {
$xpath = $self->subject_path($subj);
$xpath = id_compress($xpath);
- $doc->add_term('XPATH' . $xpath);
+ $doc->add_boolean_term('XPATH' . $xpath);
}
my $lines = $mime->body_raw =~ tr!\n!\n!;
}
my $lines = $mime->body_raw =~ tr!\n!\n!;
$doc->set_data($data);
if (my $altid = $self->{-altid}) {
foreach my $alt (@$altid) {
$doc->set_data($data);
if (my $altid = $self->{-altid}) {
foreach my $alt (@$altid) {
+ my $pfx = $alt->{xprefix};
foreach my $mid (@$mids) {
my $id = $alt->mid2alt($mid);
next unless defined $id;
foreach my $mid (@$mids) {
my $id = $alt->mid2alt($mid);
next unless defined $id;
- $doc->add_term($alt->{xprefix} . $id);
+ $doc->add_boolean_term($pfx . $id);
} else {
$tid = defined $old_tid ? $old_tid : $self->next_thread_id;
}
} else {
$tid = defined $old_tid ? $old_tid : $self->next_thread_id;
}
- $doc->add_term('G' . $tid);
+ $doc->add_boolean_term('G' . $tid);
my $tid = $self->next_thread_id;
my $doc = Search::Xapian::Document->new;
my $tid = $self->next_thread_id;
my $doc = Search::Xapian::Document->new;
- $doc->add_term('Q' . $mid);
- $doc->add_term('G' . $tid);
- $doc->add_term('T' . 'ghost');
+ $doc->add_boolean_term('Q' . $mid);
+ $doc->add_boolean_term('G' . $tid);
+ $doc->add_boolean_term('T' . 'ghost');
my $smsg = PublicInbox::SearchMsg->wrap($doc, $mid);
$self->{xdb}->add_document($doc);
my $smsg = PublicInbox::SearchMsg->wrap($doc, $mid);
$self->{xdb}->add_document($doc);
foreach my $docid (@ids) {
my $doc = $db->get_document($docid);
$doc->remove_term('G' . $loser_tid);
foreach my $docid (@ids) {
my $doc = $db->get_document($docid);
$doc->remove_term('G' . $loser_tid);
- $doc->add_term('G' . $winner_tid);
+ $doc->add_boolean_term('G' . $winner_tid);
$db->replace_document($docid, $doc);
}
}
$db->replace_document($docid, $doc);
}
}
my $ts = $values->[PublicInbox::Search::TS];
my $smsg = PublicInbox::SearchMsg->new(undef);
my $doc = $smsg->{doc};
my $ts = $values->[PublicInbox::Search::TS];
my $smsg = PublicInbox::SearchMsg->new(undef);
my $doc = $smsg->{doc};
- $doc->add_term('XPATH' . $xpath) if defined $xpath;
+ $doc->add_boolean_term('XPATH' . $xpath) if defined $xpath;
foreach my $mid (@$mids) {
$doc->add_term('Q' . $mid);
}
foreach my $mid (@$mids) {
$doc->add_term('Q' . $mid);
}
sub new {
my ($class, $mime) = @_;
my $doc = Search::Xapian::Document->new;
sub new {
my ($class, $mime) = @_;
my $doc = Search::Xapian::Document->new;
- $doc->add_term('T' . 'mail');
+ $doc->add_boolean_term('T' . 'mail');
bless { type => 'mail', doc => $doc, mime => $mime }, $class;
}
bless { type => 'mail', doc => $doc, mime => $mime }, $class;
}