From 2e171269a3eb610c98a0fbc82d6326f45d7cefb7 Mon Sep 17 00:00:00 2001 From: Nick Clemens Date: Fri, 14 Apr 2017 10:03:11 -0400 Subject: [PATCH] Bug 18434 - Elasticsearch indexing broken with newer catmandu version To test: 1 - Make sure you have latest koha deps, catmandu versions should be: libcatmandu-marc-perl 1.09-1~kohadev1 libcatmandu-perl 1.0304-2~kohadev1 2 - Reindex elastic 3 - Try searching and likely notice odd results 4 - Try: curl -XGET 'http://localhost:9200/koha_kohadev_biblios/data/792?pretty=true' with a known biblionumber and notice some null fields 5 - Apply patch 6 - Reindex 7 - Note fields are populated and search works as expected --- Koha/SearchEngine/Elasticsearch.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Koha/SearchEngine/Elasticsearch.pm b/Koha/SearchEngine/Elasticsearch.pm index 1fd8bc1..b079dca 100644 --- a/Koha/SearchEngine/Elasticsearch.pm +++ b/Koha/SearchEngine/Elasticsearch.pm @@ -326,7 +326,7 @@ sub get_fixer_rules { # The split makes everything into nested arrays, but that's not # really a big deal, ES doesn't mind. $options = '-split => 1' unless $marc_field =~ m|_/| || $type eq 'sum'; - push @rules, "marc_map('$marc_field','${name}', $options)"; + push @rules, "marc_map('$marc_field','${name}.\$append', $options)"; if ($facet) { push @rules, "marc_map('$marc_field','${name}__facet', $options)"; } -- 2.1.4