prestodb/presto

ST_Centroid (Java) does not comply with ISO spec

Open

#26,947 创建于 2026年1月12日

在 GitHub 查看
 (3 评论) (0 反应) (0 负责人)Java (5,240 fork)batch import
buggood first issue

仓库指标

Star
 (15,558 star)
PR 合并指标
 (平均合并 34天 14小时) (30 天内合并 120 个 PR)

描述

In the ISO spec, ST_Centroid(empty_geometry) returns NULL, but in the Java code it returns an empty geometry. This is fixed for Velox/native in https://github.com/facebookincubator/velox/pull/15985 , but should also be fixed in Java.

Expected Behavior

ST_Centroid(ST_GeometryFromText('LINESTRING EMPTY')) IS NULL

Current Behavior

ST_IsEmpty(ST_Centroid(ST_GeometryFromText('LINESTRING EMPTY')))

Possible Solution

The ST_Centroid function should check for an empty input geometry and return null.

Steps to Reproduce

SELECT ST_Centroid(ST_GeometryFromText('LINESTRING EMPTY'))

贡献者指南