我的文档映射的一部分与下面的映射相同
"locations": {
"type": "nested",
"properties": {
"point": {
"type": "geo_shape",
"tree": "quadtree",
"precision": "100m"
}
}
}
当我尝试在查询中发出script_field
时,Elasticsearch返回错误
failed to run inline script [doc['locations.point'].distanceInMiles(53.4791,-2.2441)] using lang [groovy]
原因如下:
failed to find field data builder for field locations.point, and type geo_shape
我假设这是因为该字段是嵌套字段(它在字段中有一些{geo} points
,并且其中的任何一个都匹配搜索,但是由于它嵌套了路径{ {1}}很明显是错误的,它必须类似于locations.point
(对于第11个而言,这取决于查询中匹配项的上下文)。
那么,有人知道正确执行此操作的方法吗?我可以告诉脚本一个特殊的运算符,以便它知道它需要从字段中查看匹配的locations.point[10]
吗?
谢谢。
答案 0 :(得分:0)
事实证明,实际上geo_shape
不可能做到这一点