diff options
author | Alexey Botchkov <holyfoot@askmonty.org> | 2017-03-14 16:35:39 +0400 |
---|---|---|
committer | Alexey Botchkov <holyfoot@askmonty.org> | 2017-03-14 16:35:39 +0400 |
commit | d0e8b427a1877392f3b90e00f2c7606608bac996 (patch) | |
tree | a4a0f7a01e3c1d0556414a2ac66467a50993998f /mysql-test | |
parent | 7c7c0696e7eba3717a592c7c2c28c46af26e3e68 (diff) | |
download | mariadb-git-d0e8b427a1877392f3b90e00f2c7606608bac996.tar.gz |
MDEV-12078 Using spatial index changes type from point to geometry
In get_mm_tree we have to change Field_geom::geom_type to
GEOMETRY as we have to let storing all types of the spatial features
in the field. So now we restore the original geom_type as it's
done.
Diffstat (limited to 'mysql-test')
-rw-r--r-- | mysql-test/r/gis-rt-precise.result | 22 | ||||
-rw-r--r-- | mysql-test/t/gis-rt-precise.test | 22 |
2 files changed, 44 insertions, 0 deletions
diff --git a/mysql-test/r/gis-rt-precise.result b/mysql-test/r/gis-rt-precise.result index 3f4f014fb78..65583a0ce0d 100644 --- a/mysql-test/r/gis-rt-precise.result +++ b/mysql-test/r/gis-rt-precise.result @@ -60,3 +60,25 @@ fid AsText(g) 45 LINESTRING(51 51,60 60) DROP TABLE t1; End of 5.5 tests. +CREATE TABLE t1 ( +coordinate point NOT NULL, +SPATIAL KEY coordinate (coordinate) +) ENGINE=Aria DEFAULT CHARSET=ascii PAGE_CHECKSUM=1; +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +coordinate point NO MUL NULL +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(0 0)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(10 0)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(10 10)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(0 10)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(5 5)")); +SELECT astext(coordinate) FROM t1 WHERE ST_Intersects(ST_LineFromText("LINESTRING(0 0, 10 0, 10 10, 0 10)"), coordinate); +astext(coordinate) +POINT(0 0) +POINT(10 0) +POINT(10 10) +POINT(0 10) +SHOW COLUMNS FROM t1; +Field Type Null Key Default Extra +coordinate point NO MUL NULL +DROP TABLE t1; diff --git a/mysql-test/t/gis-rt-precise.test b/mysql-test/t/gis-rt-precise.test index 4cae10a9076..9c26aa05598 100644 --- a/mysql-test/t/gis-rt-precise.test +++ b/mysql-test/t/gis-rt-precise.test @@ -62,3 +62,25 @@ SELECT fid, AsText(g) FROM t1 WHERE ST_Within(g, DROP TABLE t1; --echo End of 5.5 tests. + +# +# MDEV-12078 Using spatial index changes type from point to geometry. +# +CREATE TABLE t1 ( + coordinate point NOT NULL, + SPATIAL KEY coordinate (coordinate) +) ENGINE=Aria DEFAULT CHARSET=ascii PAGE_CHECKSUM=1; + +SHOW COLUMNS FROM t1; + +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(0 0)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(10 0)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(10 10)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(0 10)")); +INSERT INTO t1 (coordinate) VALUES(ST_PointFromText("POINT(5 5)")); + +SELECT astext(coordinate) FROM t1 WHERE ST_Intersects(ST_LineFromText("LINESTRING(0 0, 10 0, 10 10, 0 10)"), coordinate); + +SHOW COLUMNS FROM t1; + +DROP TABLE t1; |