diff --git a/src/main/java/tla/backend/es/query/ESQueryResult.java b/src/main/java/tla/backend/es/query/ESQueryResult.java index 6ef6722e..c95bbc8d 100644 --- a/src/main/java/tla/backend/es/query/ESQueryResult.java +++ b/src/main/java/tla/backend/es/query/ESQueryResult.java @@ -3,9 +3,11 @@ import java.util.Collection; import java.util.Collections; import java.util.HashMap; -import java.util.Iterator; import java.util.Map; import java.util.stream.Collectors; +import java.util.Iterator; +import java.util.Set; +import java.util.HashSet; import org.elasticsearch.search.aggregations.Aggregations; import org.elasticsearch.search.aggregations.bucket.terms.Terms; @@ -88,16 +90,19 @@ public void addAggregationResults(Map> aggs) { * return total number of results. */ public long getHitCount() { - int i = 0; + Set idSet = new HashSet<>(); + int index; Iterator> iterator = hits.iterator(); while (iterator.hasNext()) { SearchHit searchHit = (SearchHit) iterator.next(); String source = searchHit.getId(); - if (!source.contains("-") || source.contains("-00")) { - i++; + index = source.indexOf("-"); + if (index != -1) { + source = source.substring(0, index); } + idSet.add(source); } - return (long) i; + return (long) idSet.size(); } /**