From a94e863c3ed17c177c9ce5d284616791fd5cd380 Mon Sep 17 00:00:00 2001 From: Fridolin Somers Date: Tue, 28 May 2019 15:48:54 +0200 Subject: [PATCH] Bug 22997: Searching gives no results in auth_finder.pl During cataloguing of an existing biblio, on an heading field, the use of tag editor fills authorities finder with existing value : Search main heading ($a only) Search main heading Default operator beeing 'contains'. Actually with Elasticsearch those search give no results. Example with heading : 200 $a Casaubon $b Isaac $f 1559-1614 Call to Elasticsearch : "query" : { "bool" : { "must" : [ { "query_string" : { "query" : "Casaubon*", "default_field" : "heading-main", } }, { "query_string" : { "query" : "(Isaac*) AND (1559-1614*)", "default_field" : "heading" } } ] } }, "sort" : [ { "heading__sort.phrase" : "asc" } ] } Patch adds to "query_string" : analyze_wildcard : true. Test plan : 1) Use Elasticsearch 2) Edit an existing biblio record 3) Use tag editor on a heading 4) Click search => You get correct results 5) Check also search in authorities-home.pl Signed-off-by: Kyle M Hall Signed-off-by: Nick Clemens Signed-off-by: Martin Renvoize --- Koha/SearchEngine/Elasticsearch/QueryBuilder.pm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm index 68d09c70f4..3e63086730 100644 --- a/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm +++ b/Koha/SearchEngine/Elasticsearch/QueryBuilder.pm @@ -376,11 +376,16 @@ sub build_authorities_query { my $query = $self->_join_queries( @tokens ); if ($wh) { - push @query_parts, { query_string => { default_field => $wh, query => $query } }; + push @query_parts, { query_string => { + default_field => $wh, + analyze_wildcard => JSON::true, + query => $query + } }; } else { push @query_parts, { query_string => { + analyze_wildcard => JSON::true, query => $query, fields => $self->_search_fields(), } -- 2.39.5