Many of our internal search queries do not care about relevance,
but is used for proper thread displays.
---
 v2: set relevance when doing a regular query

 lib/PublicInbox/Search.pm | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/lib/PublicInbox/Search.pm b/lib/PublicInbox/Search.pm
index c61d4cf..d780878 100644
--- a/lib/PublicInbox/Search.pm
+++ b/lib/PublicInbox/Search.pm
@@ -76,6 +76,8 @@ sub query {
        my ($self, $query_string, $opts) = @_;
        my $query = $self->qp->parse_query($query_string, QP_FLAGS);
 
+       $opts ||= {};
+       $opts->{relevance} = 1;
        $self->do_enquire($query, $opts);
 }
 
@@ -117,7 +119,11 @@ sub do_enquire {
 
        $query = Search::Xapian::Query->new(OP_AND, $query, $mail_query);
        $enquire->set_query($query);
-       $enquire->set_sort_by_relevance_then_value(TS, 0);
+       if ($opts->{relevance}) {
+               $enquire->set_sort_by_relevance_then_value(TS, 0);
+       } else {
+               $enquire->set_sort_by_value(TS, 0);
+       }
        $opts ||= {};
        my $offset = $opts->{offset} || 0;
        my $limit = $opts->{limit} || 50;
-- 
EW

--
unsubscribe: meta+unsubscr...@public-inbox.org
archive: http://public-inbox.org/meta/

Reply via email to