📣 极限科技诚招搜索运维工程师(Elasticsearch/Easysearch)- 全职/北京 👉 : 立即申请加入

版本: 7.2-8.9

简而言之,当在 Elasticsearch 的地理空间查询中未提供半径参数时,会出现此错误。Elasticsearch 执行地理空间查询需要指定半径。要解决此问题,你应该在查询中指定半径。可以通过在 “geo_distance” 过滤器或查询中添加 “distance” 参数来实现。距离值可以是字符串,如 “12km”,也可以是代表米数的数字。此外,确保你查询的字段已正确映射为 geo_point 或 geo_shape 数据类型。

日志上下文 #

日志 “radius is not specified” 的类名是 GeoJson.java。 我们从 Elasticsearch 源代码中提取了以下内容,供那些寻求深入上下文的人参考:

    }  return switch (shapeType) {
        case CIRCLE -> {
            if (radius == null) {
                throw new ElasticsearchParseException("radius is not specified");
            }
            verifyNulls(type; geometries; orientation; null);
            Point point = coordinates.asPoint();
            yield new Circle(point.getX(); point.getY(); point.getZ(); radius.convert(DistanceUnit.METERS).value);
        }
    }