From fe41a554fa47a02d471b8216c25e5054725e9a7c Mon Sep 17 00:00:00 2001 From: Janusz Kaczmarek Date: Thu, 11 Apr 2024 09:21:42 +0000 Subject: [PATCH] Bug 36574: Canceled/invalid ISBN not indexed by ES for MARC 21 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit For MARC 21, canceled/invalid ISBNs (subfield 020 $z) are not being indexed in Elasticsearch (search fields identifier-standard and isbn), but it is for UNIMARC (subfield 010 $z). As a result, a user searching for such an ISBN (e.g. with wrong checksum--and therefor put in 020 $z) will not find the record in the catalogue. A new isbn-all Elasticsearch search field 'isbn-all' has been created with 020az (MARC 21, and 010az for UNIMARC), 010z has been removed from isbn search field for UNIMARC, and 020z has been added to identifier-standard search field. Test plan ========= 0. Have a test installation with Elasticsearch. 1. In ktd with its test data, make a biblio search for a cancelled ISBN e.g. 9780007269854. You will get no results. 2. Apply the patch, reindex with: sudo koha-elasticsearch --rebuild -r -b kohadev 3. Repeat the test. You should get "The ice princess / Camilla Läckberg". Signed-off-by: Roman Dolny Signed-off-by: Nick Clemens Signed-off-by: Katrin Fischer (cherry picked from commit 915d585b50868c878e492b2ce7d60f92fd3e8e87) Signed-off-by: Fridolin Somers (cherry picked from commit f382f4a271abffd012cc3df1dda947c99dd0a0b5) Signed-off-by: Lucas Gass --- .../searchengine/elasticsearch/mappings.yaml | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/admin/searchengine/elasticsearch/mappings.yaml b/admin/searchengine/elasticsearch/mappings.yaml index 8c74d0c47d..192189e319 100644 --- a/admin/searchengine/elasticsearch/mappings.yaml +++ b/admin/searchengine/elasticsearch/mappings.yaml @@ -1974,7 +1974,7 @@ biblios: sort: 1 suggestible: '' - facet: '' - marc_field: 020a + marc_field: 020az marc_type: marc21 sort: 1 suggestible: '' @@ -2065,6 +2065,23 @@ biblios: marc_type: marc21 sort: 1 suggestible: '' + - facet: '' + marc_field: 010a + marc_type: unimarc + sort: 1 + suggestible: '' + opac: 1 + staff_client: 1 + type: isbn + isbn-all: + label: isbn-all + mandatory: ~ + mappings: + - facet: '' + marc_field: 020az + marc_type: marc21 + sort: 1 + suggestible: '' - facet: '' marc_field: 010az marc_type: unimarc