explicit facet field, facet repairs
authorBill Erickson <berickxx@gmail.com>
Fri, 13 Sep 2019 21:18:35 +0000 (17:18 -0400)
committerBill Erickson <berickxx@gmail.com>
Fri, 21 Feb 2020 21:20:32 +0000 (16:20 -0500)
Signed-off-by: Bill Erickson <berickxx@gmail.com>
Open-ILS/src/eg2/src/app/share/catalog/elastic.service.ts
Open-ILS/src/perlmods/lib/OpenILS/Application/Search/Elastic.pm
Open-ILS/src/perlmods/lib/OpenILS/Elastic/Bib/Search.pm

index 8df8f56..e711ae7 100644 (file)
@@ -64,7 +64,7 @@ export class ElasticService {
         // Extract just the bits that get sent to ES.
         const elasticStruct: Object = requestBody.toJSON();
 
-        console.log(JSON.stringify(elasticStruct));
+        console.debug(JSON.stringify(elasticStruct));
 
         const options: any = {search_org: ctx.searchOrg.id()};
         if (ctx.global) {
@@ -137,7 +137,7 @@ export class ElasticService {
         ts.facetFilters.forEach(f => {
             if (f.facetValue !== '') {
                 rootNode.filter(new TermQuery(
-                    `${f.facetClass}|${f.facetName}`, f.facetValue));
+                    `${f.facetClass}|${f.facetName}.facet`, f.facetValue));
             }
         });
 
index 90de6fb..178b3d8 100644 (file)
@@ -261,7 +261,7 @@ sub add_elastic_facet_aggregations {
         my $fgrp = $facet->search_group;
         $fname = "$fgrp|$fname" if $fgrp;
 
-        $elastic_query->{aggs}{$fname} = {terms => {field => $fname}};
+        $elastic_query->{aggs}{$fname} = {terms => {field => "$fname.facet"}};
     }
 }
 
index b110a81..d3cdf49 100644 (file)
@@ -235,7 +235,7 @@ sub create_index {
         if ($field->facet_field eq 't' && $def->{fields}) {
             # Facet fields are used for aggregation which requires
             # an additional unaltered keyword field.
-            $def->{fields}->{raw} = {type => 'keyword'};
+            $def->{fields}->{facet} = {type => 'keyword'};
         }
 
         $logger->debug("ES adding field $field_name: ".