elasticsearch5.x在java查询中排序的问题

最近线上的es报了一个异常,核心信息如下: 

Java代码
No mapping found for [createDate] in order to sort on

我们的es索引是嵌套索引,上面的这个异常大致意思是说在某个shard里面嵌套结构里面 

createDate这个字段不存在数据,所以排序失败。 

如何解决: 

这个也比较好解决,在排序的时候,需要设置在maping里面不存在的里面,应该如何处理,容错代码如下: 

  1. search.addSort(SortBuilders.fieldSort("createDate").unmappedType("date").order(SortOrder.DESC))  

你可能感兴趣的:(elasticsearch5.x在java查询中排序的问题)