Skip to content

Commit 23a6019

Browse files
author
Luc Boutier
committed
Fixing issues and moving version to 1.6.0
1 parent 1dacb70 commit 23a6019

File tree

5 files changed

+20
-20
lines changed

5 files changed

+20
-20
lines changed

elasticsearch-annotations/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
<parent>
55
<groupId>org.alien4cloud</groupId>
66
<artifactId>elasticsearch-mapping-parent</artifactId>
7-
<version>1.6.0-SNAPSHOT</version>
7+
<version>1.6.0</version>
88
</parent>
99

1010
<artifactId>elasticsearch-annotations</artifactId>

elasticsearch-mapping/pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<parent>
44
<groupId>org.alien4cloud</groupId>
55
<artifactId>elasticsearch-mapping-parent</artifactId>
6-
<version>1.6.0-SNAPSHOT</version>
6+
<version>1.6.0</version>
77
</parent>
88

99
<artifactId>elasticsearch-mapping</artifactId>

elasticsearch-mapping/src/main/java/org/elasticsearch/mapping/QueryHelper.java

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
import org.elasticsearch.action.search.SearchType;
1313
import org.elasticsearch.common.collect.Lists;
1414
import org.elasticsearch.common.collect.Maps;
15+
import org.elasticsearch.common.collect.Sets;
1516
import org.elasticsearch.common.logging.ESLogger;
1617
import org.elasticsearch.common.logging.Loggers;
1718
import org.elasticsearch.index.query.*;
@@ -396,8 +397,9 @@ public SearchRequestBuilder generate(QueryBuilderAdapter queryBuilderAdapter) {
396397
searchRequestBuilder.setTypes(getTypes());
397398
if (classes != null && classes.length > 0) {
398399
addFetchContext(searchRequestBuilder);
400+
Set<String> aggIds = Sets.newHashSet();
399401
for (Class<?> clazz : classes) {
400-
addFilters(searchRequestBuilder, customFilter, clazz);
402+
addFilters(searchRequestBuilder, customFilter, clazz, aggIds);
401403
}
402404
}
403405
if (fieldSort != null) {
@@ -473,7 +475,7 @@ private void addFetchContext(SearchRequestBuilder searchRequestBuilder) {
473475
searchRequestBuilder.setFetchSource(inc, exc);
474476
}
475477

476-
private void addFilters(SearchRequestBuilder searchRequestBuilder, FilterBuilder customFilter, Class<?> clazz) {
478+
private void addFilters(SearchRequestBuilder searchRequestBuilder, FilterBuilder customFilter, Class<?> clazz, Set<String> aggIds) {
477479
if (clazz == null) {
478480
return;
479481
}
@@ -488,24 +490,20 @@ private void addFilters(SearchRequestBuilder searchRequestBuilder, FilterBuilder
488490
}
489491
if (facets) {
490492
if (filters == null) {
491-
addAggregations(new HashMap<String, String[]>(), clazz.getName(), searchRequestBuilder);
493+
addAggregations(new HashMap<String, String[]>(), clazz.getName(), searchRequestBuilder, aggIds);
492494
} else {
493-
addAggregations(filters, clazz.getName(), searchRequestBuilder);
495+
addAggregations(filters, clazz.getName(), searchRequestBuilder, aggIds);
494496
}
495497
}
496498
}
497499

498-
private void addAggregations(Map<String, String[]> filters, String className, SearchRequestBuilder searchRequestBuilder) {
500+
private void addAggregations(Map<String, String[]> filters, String className, SearchRequestBuilder searchRequestBuilder, Set<String> aggIds) {
499501
final List<AggregationBuilder> aggregations = buildAggregations(className, filters.keySet());
500-
501-
if (aggregations.size() > 0) {
502-
AggregationBuilder aggregationBuilder = AggregationBuilders.global("facet_aggregation");
503-
504-
for (AggregationBuilder aggregation : aggregations) {
505-
aggregationBuilder.subAggregation(aggregation);
502+
for (AggregationBuilder aggregation : aggregations) {
503+
if (!aggIds.contains(aggregation.getName())) {
504+
aggIds.add(aggregation.getName());
505+
searchRequestBuilder.addAggregation(aggregation);
506506
}
507-
508-
searchRequestBuilder.addAggregation(aggregationBuilder);
509507
}
510508
}
511509

@@ -574,8 +572,9 @@ private List<AggregationBuilder> buildAggregations(String className, Set<String>
574572
final List<AggregationBuilder> aggregationBuilders = new ArrayList<AggregationBuilder>();
575573
List<IFacetBuilderHelper> facetBuilderHelpers = mappingBuilder.getFacets(className);
576574

577-
if (facetBuilderHelpers == null || facetBuilderHelpers.size() < 1)
575+
if (facetBuilderHelpers == null || facetBuilderHelpers.size() < 1) {
578576
return aggregationBuilders;
577+
}
579578

580579
for (IFacetBuilderHelper facetBuilderHelper : facetBuilderHelpers) {
581580
if (filters == null || !filters.contains(facetBuilderHelper.getEsFieldName())) {

elasticsearch-mapping/src/main/java/org/elasticsearch/mapping/TermsAggregationBuilderHelper.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,10 @@ public TermsAggregationBuilderHelper(final boolean isAnalyzed, final String nest
3636
@Override
3737
public AggregationBuilder buildFacet() {
3838
TermsBuilder termsBuilder = AggregationBuilders.terms(getEsFieldName()).field(getEsFieldName()).size(size);
39-
if (exclude != null) {
40-
termsBuilder.exclude(exclude);
41-
}
39+
// Elastic search has a bug with excludes so don't use it. https://github.com/elastic/elasticsearch/issues/18575
40+
// if (exclude != null) {
41+
// termsBuilder.exclude(exclude);
42+
// }
4243
return termsBuilder;
4344
}
4445
}

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
<modelVersion>4.0.0</modelVersion>
44
<groupId>org.alien4cloud</groupId>
55
<artifactId>elasticsearch-mapping-parent</artifactId>
6-
<version>1.6.0-SNAPSHOT</version>
6+
<version>1.6.0</version>
77
<packaging>pom</packaging>
88

99
<name>Elastic search mapping parent</name>

0 commit comments

Comments
 (0)