From af52df2d968da63ce57452b2ae935630cbc0c02f Mon Sep 17 00:00:00 2001 From: Guo Xiang Tan Date: Thu, 2 Jul 2020 14:11:18 +0800 Subject: [PATCH] DEV: Add hidden site setting for PG search ranking normalization. --- config/site_settings.yml | 3 +++ lib/search.rb | 4 +--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/config/site_settings.yml b/config/site_settings.yml index 557d7bdf81d..1c28fe7c9ca 100644 --- a/config/site_settings.yml +++ b/config/site_settings.yml @@ -1730,6 +1730,9 @@ backups: hidden: true search: + search_ranking_normalization: + default: '1' + hidden: true search_inject_extra_terms: default: true hidden: true diff --git a/lib/search.rb b/lib/search.rb index 9b593d8d155..aef17c46107 100644 --- a/lib/search.rb +++ b/lib/search.rb @@ -937,14 +937,12 @@ class Search posts = posts.order("posts.like_count DESC") end else - # 1|32 divides the rank by 1 + logarithm of the document length and - # scales the range from zero to one data_ranking = <<~SQL ( TS_RANK_CD( post_search_data.search_data, #{ts_query(weight_filter: weights)}, - 1|32 + #{Sitesetting.search_ranking_normalization}|32 ) * ( CASE categories.search_priority