Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
10.1(EOL)
Description
Test case |
CREATE TABLE gis_geometrycollection (fid int, g GEOMETRYCOLLECTION NOT NULL) ENGINE=MyISAM;
|
|
INSERT INTO gis_geometrycollection (fid,g) VALUES
|
(120, GeomCollFromText('GEOMETRYCOLLECTION(POINT(0 0), LINESTRING(0 0,10 10))')),
|
(122, GeomFromText('GeometryCollection()'));
|
|
SELECT g1.fid as first, g2.fid as second,
|
Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
|
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
|
Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
|
FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
|
|
ALTER TABLE gis_geometrycollection MODIFY g GEOMETRYCOLLECTION NULL;
|
|
SELECT g1.fid as first, g2.fid as second,
|
Within(g1.g, g2.g) as w, Contains(g1.g, g2.g) as c, Overlaps(g1.g, g2.g) as o,
|
Equals(g1.g, g2.g) as e, Disjoint(g1.g, g2.g) as d, Touches(g1.g, g2.g) as t,
|
Intersects(g1.g, g2.g) as i, Crosses(g1.g, g2.g) as r
|
FROM gis_geometrycollection g1, gis_geometrycollection g2 ORDER BY first, second;
|
|
DROP TABLE gis_geometrycollection;
|
Output on 10.1 |
# First SELECT
|
+-------+--------+---+---+---+---+---+---+---+---+
|
| first | second | w | c | o | e | d | t | i | r |
|
+-------+--------+---+---+---+---+---+---+---+---+
|
| 120 | 120 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
|
| 120 | 122 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
|
| 122 | 120 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
|
| 122 | 122 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
|
+-------+--------+---+---+---+---+---+---+---+---+
|
|
# Second SELECT
|
+-------+--------+------+------+------+------+------+------+------+------+
|
| first | second | w | c | o | e | d | t | i | r |
|
+-------+--------+------+------+------+------+------+------+------+------+
|
| 120 | 120 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 0 |
|
| 120 | 122 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
|
| 122 | 120 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
|
| 122 | 122 | NULL | NULL | NULL | NULL | NULL | NULL | NULL | NULL |
|
+-------+--------+------+------+------+------+------+------+------+------+
|
I am not even sure which result is correct, but in any case they cannot possibly be different.
Note: storage_engine.type_spatial_indexes fails because of it.