From 9b9c56c3b28e4e5e1592b3a0102114d88418d958 Mon Sep 17 00:00:00 2001 From: Julian Maurice Date: Thu, 25 Jun 2020 11:25:41 +0400 Subject: [PATCH] Bug 25873: Ignore malformed data for Elasticsearch integer fields If we try to put malformed data into an integer field, Elasticsearch rejects the whole document. Setting 'ignore_malformed' to true allows to ignore malformed data and process the other fields of the document normally https://www.elastic.co/guide/en/elasticsearch/reference/7.8/ignore-malformed.html Test plan: * Without the patch 1. In search engine configuration, change the type of a text field to 'Number' (for instance 'title') 2. misc/search_tools/rebuild_elasticsearch.pl -d -b 3. See that the index is empty (unless you have titles consisting only of digits) * With the patch 1. misc/search_tools/rebuild_elasticsearch.pl -d -b 2. Now records are correctly indexed Signed-off-by: Nick Clemens Signed-off-by: Jonathan Druart (cherry picked from commit cb5acdc6702cef4668921ccf2537797358981fff) Signed-off-by: Lucas Gass (cherry picked from commit 056eb8c74e0b01386a0a1127ed5fff5ef59390b1) Signed-off-by: Aleisha Amohia --- admin/searchengine/elasticsearch/field_config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/admin/searchengine/elasticsearch/field_config.yaml b/admin/searchengine/elasticsearch/field_config.yaml index e48cde7f57..806f586dea 100644 --- a/admin/searchengine/elasticsearch/field_config.yaml +++ b/admin/searchengine/elasticsearch/field_config.yaml @@ -24,6 +24,7 @@ search: integer: type: integer null_value: 0 + ignore_malformed: true stdno: type: text analyzer: analyzer_stdno -- 2.39.5