Repository: usergrid Updated Branches: refs/heads/3.0.0_experimental dd99e006b -> 356251723
Fix nested sort Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/35625172 Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/35625172 Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/35625172 Branch: refs/heads/3.0.0_experimental Commit: 3562517232b3a9408b6592985262a44fe453106a Parents: dd99e00 Author: Peter Johnson <[email protected]> Authored: Tue Nov 21 14:51:21 2017 -0800 Committer: Peter Johnson <[email protected]> Committed: Tue Nov 21 14:51:21 2017 -0800 ---------------------------------------------------------------------- .../apache/usergrid/persistence/index/impl/EsQueryVistor.java | 7 +++++-- .../persistence/index/impl/SearchRequestBuilderStrategy.java | 7 +++---- .../apache/usergrid/persistence/index/impl/SortBuilder.java | 2 +- 3 files changed, 9 insertions(+), 7 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/usergrid/blob/35625172/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsQueryVistor.java ---------------------------------------------------------------------- diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsQueryVistor.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsQueryVistor.java index 7adb332..0cdfbf9 100644 --- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsQueryVistor.java +++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/EsQueryVistor.java @@ -29,6 +29,7 @@ import org.elasticsearch.index.query.*; import org.elasticsearch.search.sort.GeoDistanceSortBuilder; import org.elasticsearch.search.sort.SortBuilders; +import org.elasticsearch.search.sort.SortMode; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -300,10 +301,12 @@ public class EsQueryVistor implements QueryVisitor { final GeoDistanceSortBuilder geoSort = SortBuilders.geoDistanceSort( IndexingUtils.FIELD_LOCATION_NESTED, lat, lon ) .unit( DistanceUnit.METERS ) - .geoDistance(GeoDistance.ARC).point(lat, lon); + .sortMode(SortMode.MIN) + .geoDistance(GeoDistance.ARC); - final TermQueryBuilder sortPropertyName = sortPropertyTermFilter(name); + final TermQueryBuilder sortPropertyName = sortPropertyTermFilter(name); + geoSort.setNestedPath(IndexingUtils.ENTITY_FIELDS); geoSort.setNestedFilter( sortPropertyName ); http://git-wip-us.apache.org/repos/asf/usergrid/blob/35625172/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SearchRequestBuilderStrategy.java ---------------------------------------------------------------------- diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SearchRequestBuilderStrategy.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SearchRequestBuilderStrategy.java index 3119b4a..a31ed18 100644 --- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SearchRequestBuilderStrategy.java +++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SearchRequestBuilderStrategy.java @@ -49,7 +49,7 @@ import com.google.common.base.Preconditions; import java.util.List; import java.util.Map; -import static org.apache.usergrid.persistence.index.impl.IndexingUtils.*; +import static org.apache.usergrid.persistence.index.impl.IndexingUtils.createContextName; import static org.apache.usergrid.persistence.index.impl.SortBuilder.sortPropertyTermFilter; @@ -267,12 +267,11 @@ public class SearchRequestBuilderStrategy { private FieldSortBuilder createSort( final SortOrder sortOrder, final String fieldName, final String propertyName ) { - final TermQueryBuilder propertyFilter = QueryBuilders.termQuery( ENTITY_FIELDS + "." + IndexingUtils.FIELD_NAME, propertyName ); - + final TermQueryBuilder propertyFilter = sortPropertyTermFilter(propertyName); FieldSortBuilder fieldSortBuilder = SortBuilders.fieldSort( fieldName ) .order( sortOrder ) .setNestedFilter( propertyFilter ) - .setNestedPath(ENTITY_FIELDS ); + .setNestedPath(IndexingUtils.ENTITY_FIELDS ); return fieldSortBuilder; } http://git-wip-us.apache.org/repos/asf/usergrid/blob/35625172/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SortBuilder.java ---------------------------------------------------------------------- diff --git a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SortBuilder.java b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SortBuilder.java index f487747..222cfd2 100644 --- a/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SortBuilder.java +++ b/stack/corepersistence/queryindex/src/main/java/org/apache/usergrid/persistence/index/impl/SortBuilder.java @@ -38,7 +38,7 @@ public class SortBuilder { * Create a term filter for our sorts */ public static TermQueryBuilder sortPropertyTermFilter( final String propertyName ) { - return QueryBuilders.termQuery( IndexingUtils.FIELD_NAME, propertyName ); + return QueryBuilders.termQuery( IndexingUtils.FIELD_NAME_NESTED, propertyName ); } }
