Details
-
New Feature
-
Status: In Testing (View Workflow)
-
Major
-
Resolution: Unresolved
Description
This function takes as input a geometry and verifies that:
- is compliant with the Well-Known Binary(WKB) format and Spatial Reference System Identifier (SRID) syntax.
- is geometrically valid.
If the input is valid return it, else it returns NULL. The use case of this function is to filter out invalid geometry data.
The following exceptions apply:
- If an input Polygon or MultiPolygon has clockwise rings, those rings are reversed before checking for validity. The value with the reversed rings is returned if the geometry is valid.
- The only valid empty geometry is represented as an empty geometry collection value. ST_Validate() returns it directly without further checks in this case.
- If the geometry has a geographic SRS with a longitude or latitude that is out of range, an error occurs:
- If a longitude value is not in the range (−180, 180], an ER_GEOMETRY_PARAM_LONGITUDE_OUT_OF_RANGE error occurs.
- If a latitude value is not in the range [−90, 90], an ER_GEOMETRY_PARAM_LATITUDE_OUT_OF_RANGE error occurs.
This function has to be compatible with the MySQL function ST_Validate and for this reason, part of this card is taken from https://dev.mysql.com/doc/refman/8.0/en/spatial-convenience-functions.html .
Attachments
Issue Links
- causes
-
MDEV-35103 CREATE TABLE AS SELECT ST_VALIDATE creates a column with datatype point, not geometry
- Open
-
MDEV-35126 Wrong results from st_isvalid or st_validate function, while using multipolygon
- Stalled
- is part of
-
MDEV-17398 Implement Geographic functions available in MySQL 8.0
- Stalled
-
MDEV-34120 GSoC 2024, Spatial (GIS) functions in MariaDB
- In Testing
- relates to
-
MDEV-35062 Assertion `str_length + (uint32) (4) <= Alloced_length' failed in Binary_string::q_append
- Closed