prestodb/presto

ST_Centroid (Java) does not comply with ISO spec

Ouverte

#26 947 ouverte le 12 janv. 2026

 (3 commentaires) (0 réaction) (0 personne assignée)Java (5 240 forks)batch import
buggood first issue

Métriques du dépôt

Stars
 (15 558 étoiles)
Métriques de merge PR
 (Merge moyen 34j 14h) (120 PRs mergées en 30 j)

Description

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'))

Guide contributeur