959 lines
		
	
	
		
			44 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
		
		
			
		
	
	
			959 lines
		
	
	
		
			44 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
|  | -- source include/have_geometry.inc | ||
|  | 
 | ||
|  | # | ||
|  | # test of rtree (using with spatial data) | ||
|  | # | ||
|  | --disable_warnings | ||
|  | DROP TABLE IF EXISTS t1, t2; | ||
|  | --enable_warnings | ||
|  | 
 | ||
|  | CREATE TABLE t1 ( | ||
|  |   fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,  | ||
|  |   g GEOMETRY NOT NULL, | ||
|  |   SPATIAL KEY(g) | ||
|  | ) ENGINE=MyISAM; | ||
|  | 
 | ||
|  | SHOW CREATE TABLE t1; | ||
|  | 
 | ||
|  | let $1=150; | ||
|  | let $2=150; | ||
|  | while ($1) | ||
|  | { | ||
|  |   eval INSERT INTO t1 (g) VALUES (GeomFromText('LineString($1 $1, $2 $2)')); | ||
|  |   dec $1; | ||
|  |   inc $2; | ||
|  | } | ||
|  | 
 | ||
|  | SELECT count(*) FROM t1; | ||
|  | EXPLAIN SELECT fid, AsText(g) FROM t1 WHERE Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))')); | ||
|  | SELECT fid, AsText(g) FROM t1 WHERE Within(g, GeomFromText('Polygon((140 140,160 140,160 160,140 160,140 140))')); | ||
|  | 
 | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | CREATE TABLE t2 ( | ||
|  |   fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,  | ||
|  |   g GEOMETRY NOT NULL | ||
|  | ) ENGINE=MyISAM; | ||
|  | 
 | ||
|  | let $1=10; | ||
|  | while ($1) | ||
|  | { | ||
|  |   let $2=10; | ||
|  |   while ($2) | ||
|  |   { | ||
|  |     eval INSERT INTO t2 (g) VALUES (LineString(Point($1 * 10 - 9, $2 * 10 - 9), Point($1 * 10, $2 * 10))); | ||
|  |     dec $2; | ||
|  |   } | ||
|  |   dec $1; | ||
|  | } | ||
|  | 
 | ||
|  | ALTER TABLE t2 ADD SPATIAL KEY(g); | ||
|  | SHOW CREATE TABLE t2; | ||
|  | SELECT count(*) FROM t2; | ||
|  | EXPLAIN SELECT fid, AsText(g) FROM t2 WHERE Within(g,  | ||
|  |   GeomFromText('Polygon((40 40,60 40,60 60,40 60,40 40))')); | ||
|  | SELECT fid, AsText(g) FROM t2 WHERE Within(g,  | ||
|  |   GeomFromText('Polygon((40 40,60 40,60 60,40 60,40 40))')); | ||
|  | 
 | ||
|  | let $1=10; | ||
|  | while ($1) | ||
|  | { | ||
|  |   let $2=10; | ||
|  |   while ($2) | ||
|  |   { | ||
|  |     eval DELETE FROM t2 WHERE Within(g, Envelope(GeometryFromWKB(Point($1 * 10 - 9, $2 * 10 - 9), Point($1 * 10, $2 * 10)))); | ||
|  |     SELECT count(*) FROM t2; | ||
|  |     dec $2; | ||
|  |   } | ||
|  |   dec $1; | ||
|  | } | ||
|  | 
 | ||
|  | DROP TABLE t2; | ||
|  | 
 | ||
|  | drop table if exists t1; | ||
|  | CREATE TABLE t1 (a geometry NOT NULL, SPATIAL (a)); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | INSERT INTO t1 VALUES (GeomFromText("LINESTRING(100 100, 200 200, 300 300)")); | ||
|  | check table t1; | ||
|  | analyze table t1; | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | # | ||
|  | # The following crashed gis | ||
|  | # | ||
|  | 
 | ||
|  | CREATE TABLE t1 ( | ||
|  |   fid INT NOT NULL AUTO_INCREMENT PRIMARY KEY,  | ||
|  |   g GEOMETRY NOT NULL, | ||
|  |   SPATIAL KEY(g) | ||
|  | ) ENGINE=MyISAM; | ||
|  | 
 | ||
|  | INSERT INTO t1 (g) VALUES (GeomFromText('LineString(1 2, 2 3)')),(GeomFromText('LineString(1 2, 2 4)')); | ||
|  | #select * from t1 where g<GeomFromText('LineString(1 2, 2 3)'); | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | CREATE TABLE t1 ( | ||
|  |   line LINESTRING NOT NULL, | ||
|  |   kind ENUM('po', 'pp', 'rr', 'dr', 'rd', 'ts', 'cl') NOT NULL DEFAULT 'po', | ||
|  |   name VARCHAR(32), | ||
|  | 
 | ||
|  |   SPATIAL KEY (line) | ||
|  | 
 | ||
|  | 
 | ||
|  | ) engine=myisam; | ||
|  | 
 | ||
|  | ALTER TABLE t1 DISABLE KEYS; | ||
|  | INSERT INTO t1 (name, kind, line) VALUES  | ||
|  |   ("Aadaouane", "pp", GeomFromText("POINT(32.816667 35.983333)")), | ||
|  |   ("Aadassiye", "pp", GeomFromText("POINT(35.816667 36.216667)")), | ||
|  |   ("Aadbel", "pp", GeomFromText("POINT(34.533333 36.100000)")), | ||
|  |   ("Aadchit", "pp", GeomFromText("POINT(33.347222 35.423611)")), | ||
|  |   ("Aadchite", "pp", GeomFromText("POINT(33.347222 35.423611)")), | ||
|  |   ("Aadchit el Qoussair", "pp", GeomFromText("POINT(33.283333 35.483333)")), | ||
|  |   ("Aaddaye", "pp", GeomFromText("POINT(36.716667 40.833333)")), | ||
|  |   ("'Aadeissa", "pp", GeomFromText("POINT(32.823889 35.698889)")), | ||
|  |   ("Aaderup", "pp", GeomFromText("POINT(55.216667 11.766667)")), | ||
|  |   ("Qalaat Aades", "pp", GeomFromText("POINT(33.503333 35.377500)")), | ||
|  |   ("A ad'ino", "pp", GeomFromText("POINT(54.812222 38.209167)")), | ||
|  |   ("Aadi Noia", "pp", GeomFromText("POINT(13.800000 39.833333)")), | ||
|  |   ("Aad La Macta", "pp", GeomFromText("POINT(35.779444 -0.129167)")), | ||
|  |   ("Aadland", "pp", GeomFromText("POINT(60.366667 5.483333)")), | ||
|  |   ("Aadliye", "pp", GeomFromText("POINT(33.366667 36.333333)")), | ||
|  |   ("Aadloun", "pp", GeomFromText("POINT(33.403889 35.273889)")), | ||
|  |   ("Aadma", "pp", GeomFromText("POINT(58.798333 22.663889)")), | ||
|  |   ("Aadma Asundus", "pp", GeomFromText("POINT(58.798333 22.663889)")), | ||
|  |   ("Aadmoun", "pp", GeomFromText("POINT(34.150000 35.650000)")), | ||
|  |   ("Aadneram", "pp", GeomFromText("POINT(59.016667 6.933333)")), | ||
|  |   ("Aadneskaar", "pp", GeomFromText("POINT(58.083333 6.983333)")), | ||
|  |   ("Aadorf", "pp", GeomFromText("POINT(47.483333 8.900000)")), | ||
|  |   ("Aadorp", "pp", GeomFromText("POINT(52.366667 6.633333)")), | ||
|  |   ("Aadouane", "pp", GeomFromText("POINT(32.816667 35.983333)")), | ||
|  |   ("Aadoui", "pp", GeomFromText("POINT(34.450000 35.983333)")), | ||
|  |   ("Aadouiye", "pp", GeomFromText("POINT(34.583333 36.183333)")), | ||
|  |   ("Aadouss", "pp", GeomFromText("POINT(33.512500 35.601389)")), | ||
|  |   ("Aadra", "pp", GeomFromText("POINT(33.616667 36.500000)")), | ||
|  |   ("Aadzi", "pp", GeomFromText("POINT(38.100000 64.850000)")); | ||
|  | 
 | ||
|  | ALTER TABLE t1 ENABLE KEYS; | ||
|  | INSERT INTO t1 (name, kind, line) VALUES ("austria", "pp", GeomFromText('LINESTRING(14.9906 48.9887,14.9946 48.9904,14.9947 48.9916)')); | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | CREATE TABLE t1 (st varchar(100)); | ||
|  | INSERT INTO t1 VALUES ("Fake string"); | ||
|  | CREATE TABLE t2 (geom GEOMETRY NOT NULL, SPATIAL KEY gk(geom)); | ||
|  | --error 1416 | ||
|  | INSERT INTO t2 SELECT GeomFromText(st) FROM t1; | ||
|  | drop table t1, t2; | ||
|  | 
 | ||
|  | CREATE TABLE t1 (`geometry` geometry NOT NULL default '',SPATIAL KEY `gndx` (`geometry`)) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
|  | 
 | ||
|  | INSERT INTO t1 (geometry) VALUES | ||
|  | (PolygonFromText('POLYGON((-18.6086111000 -66.9327777000, -18.6055555000 | ||
|  | -66.8158332999, -18.7186111000 -66.8102777000, -18.7211111000 -66.9269443999, | ||
|  | -18.6086111000 -66.9327777000))')); | ||
|  | 
 | ||
|  | INSERT INTO t1 (geometry) VALUES | ||
|  | (PolygonFromText('POLYGON((-65.7402776999 -96.6686111000, -65.7372222000 | ||
|  | -96.5516666000, -65.8502777000 -96.5461111000, -65.8527777000 -96.6627777000, | ||
|  | -65.7402776999 -96.6686111000))')); | ||
|  | check table t1 extended; | ||
|  | 
 | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | # | ||
|  | # Bug#17877 - Corrupted spatial index | ||
|  | # | ||
|  | CREATE TABLE t1 ( | ||
|  |   c1 geometry NOT NULL default '', | ||
|  |   SPATIAL KEY i1 (c1) | ||
|  | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
|  | INSERT INTO t1 (c1) VALUES ( | ||
|  |   PolygonFromText('POLYGON((-18.6086111000 -66.9327777000, | ||
|  |                             -18.6055555000 -66.8158332999, | ||
|  |                             -18.7186111000 -66.8102777000, | ||
|  |                             -18.7211111000 -66.9269443999, | ||
|  |                             -18.6086111000 -66.9327777000))')); | ||
|  | # This showed a missing key. | ||
|  | CHECK TABLE t1 EXTENDED; | ||
|  | DROP TABLE t1; | ||
|  | # | ||
|  | CREATE TABLE t1 ( | ||
|  |   c1 geometry NOT NULL default '', | ||
|  |   SPATIAL KEY i1 (c1) | ||
|  | ) ENGINE=MyISAM DEFAULT CHARSET=latin1; | ||
|  | INSERT INTO t1 (c1) VALUES ( | ||
|  |   PolygonFromText('POLYGON((-18.6086111000 -66.9327777000, | ||
|  |                             -18.6055555000 -66.8158332999, | ||
|  |                             -18.7186111000 -66.8102777000, | ||
|  |                             -18.7211111000 -66.9269443999, | ||
|  |                             -18.6086111000 -66.9327777000))')); | ||
|  | INSERT INTO t1 (c1) VALUES ( | ||
|  |   PolygonFromText('POLYGON((-65.7402776999 -96.6686111000, | ||
|  |                             -65.7372222000 -96.5516666000, | ||
|  |                             -65.8502777000 -96.5461111000, | ||
|  |                             -65.8527777000 -96.6627777000, | ||
|  |                             -65.7402776999 -96.6686111000))')); | ||
|  | # This is the same as the first insert to get a non-unique key. | ||
|  | INSERT INTO t1 (c1) VALUES ( | ||
|  |   PolygonFromText('POLYGON((-18.6086111000 -66.9327777000, | ||
|  |                             -18.6055555000 -66.8158332999, | ||
|  |                             -18.7186111000 -66.8102777000, | ||
|  |                             -18.7211111000 -66.9269443999, | ||
|  |                             -18.6086111000 -66.9327777000))')); | ||
|  | # This showed (and still shows) OK. | ||
|  | CHECK TABLE t1 EXTENDED; | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | # | ||
|  | # Bug #21888: Query on GEOMETRY field using PointFromWKB() results in lost connection | ||
|  | # | ||
|  | CREATE TABLE t1 (foo GEOMETRY NOT NULL, SPATIAL INDEX(foo) ); | ||
|  | INSERT INTO t1 (foo) VALUES (POINT(1,1)); | ||
|  | INSERT INTO t1 (foo) VALUES (POINT(1,0)); | ||
|  | INSERT INTO t1 (foo) VALUES (POINT(0,1)); | ||
|  | INSERT INTO t1 (foo) VALUES (POINT(0,0)); | ||
|  | SELECT 1 FROM t1 WHERE foo != POINT(0,0); | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | # | ||
|  | # Bug#25673 - spatial index corruption, error 126 incorrect key file for table | ||
|  | # | ||
|  | CREATE TABLE t1 (id bigint(12) unsigned NOT NULL auto_increment, | ||
|  |   c2 varchar(15) collate utf8_bin default NULL, | ||
|  |   c1 varchar(15) collate utf8_bin default NULL, | ||
|  |   c3 varchar(10) collate utf8_bin default NULL, | ||
|  |   spatial_point point NOT NULL, | ||
|  |   PRIMARY KEY(id), | ||
|  |   SPATIAL KEY (spatial_point) | ||
|  |   )ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin; | ||
|  | # | ||
|  | INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES | ||
|  |   ('y', 's', 'j', GeomFromText('POINT(167 74)')), | ||
|  |   ('r', 'n', 'd', GeomFromText('POINT(215 118)')), | ||
|  |   ('g', 'n', 'e', GeomFromText('POINT(203 98)')), | ||
|  |   ('h', 'd', 'd', GeomFromText('POINT(54 193)')), | ||
|  |   ('r', 'x', 'y', GeomFromText('POINT(47 69)')), | ||
|  |   ('t', 'q', 'r', GeomFromText('POINT(109 42)')), | ||
|  |   ('a', 'z', 'd', GeomFromText('POINT(0 154)')), | ||
|  |   ('x', 'v', 'o', GeomFromText('POINT(174 131)')), | ||
|  |   ('b', 'r', 'a', GeomFromText('POINT(114 253)')), | ||
|  |   ('x', 'z', 'i', GeomFromText('POINT(163 21)')), | ||
|  |   ('w', 'p', 'i', GeomFromText('POINT(42 102)')), | ||
|  |   ('g', 'j', 'j', GeomFromText('POINT(170 133)')), | ||
|  |   ('m', 'g', 'n', GeomFromText('POINT(28 22)')), | ||
|  |   ('b', 'z', 'h', GeomFromText('POINT(174 28)')), | ||
|  |   ('q', 'k', 'f', GeomFromText('POINT(233 73)')), | ||
|  |   ('w', 'w', 'a', GeomFromText('POINT(124 200)')), | ||
|  |   ('t', 'j', 'w', GeomFromText('POINT(252 101)')), | ||
|  |   ('d', 'r', 'd', GeomFromText('POINT(98 18)')), | ||
|  |   ('w', 'o', 'y', GeomFromText('POINT(165 31)')), | ||
|  |   ('y', 'h', 't', GeomFromText('POINT(14 220)')), | ||
|  |   ('d', 'p', 'u', GeomFromText('POINT(223 196)')), | ||
|  |   ('g', 'y', 'g', GeomFromText('POINT(207 96)')), | ||
|  |   ('x', 'm', 'n', GeomFromText('POINT(214 3)')), | ||
|  |   ('g', 'v', 'e', GeomFromText('POINT(140 205)')), | ||
|  |   ('g', 'm', 'm', GeomFromText('POINT(10 236)')), | ||
|  |   ('i', 'r', 'j', GeomFromText('POINT(137 228)')), | ||
|  |   ('w', 's', 'p', GeomFromText('POINT(115 6)')), | ||
|  |   ('o', 'n', 'k', GeomFromText('POINT(158 129)')), | ||
|  |   ('j', 'h', 'l', GeomFromText('POINT(129 72)')), | ||
|  |   ('f', 'x', 'l', GeomFromText('POINT(139 207)')), | ||
|  |   ('u', 'd', 'n', GeomFromText('POINT(125 109)')), | ||
|  |   ('b', 'a', 'z', GeomFromText('POINT(30 32)')), | ||
|  |   ('m', 'h', 'o', GeomFromText('POINT(251 251)')), | ||
|  |   ('f', 'r', 'd', GeomFromText('POINT(243 211)')), | ||
|  |   ('b', 'd', 'r', GeomFromText('POINT(232 80)')), | ||
|  |   ('g', 'k', 'v', GeomFromText('POINT(15 100)')), | ||
|  |   ('i', 'f', 'c', GeomFromText('POINT(109 66)')), | ||
|  |   ('r', 't', 'j', GeomFromText('POINT(178 6)')), | ||
|  |   ('y', 'n', 'f', GeomFromText('POINT(233 211)')), | ||
|  |   ('f', 'y', 'm', GeomFromText('POINT(99 16)')), | ||
|  |   ('z', 'q', 'l', GeomFromText('POINT(39 49)')), | ||
|  |   ('j', 'c', 'r', GeomFromText('POINT(75 187)')), | ||
|  |   ('c', 'y', 'y', GeomFromText('POINT(246 253)')), | ||
|  |   ('w', 'u', 'd', GeomFromText('POINT(56 190)')), | ||
|  |   ('n', 'q', 'm', GeomFromText('POINT(73 149)')), | ||
|  |   ('d', 'y', 'a', GeomFromText('POINT(134 6)')), | ||
|  |   ('z', 's', 'w', GeomFromText('POINT(216 225)')), | ||
|  |   ('d', 'u', 'k', GeomFromText('POINT(132 70)')), | ||
|  |   ('f', 'v', 't', GeomFromText('POINT(187 141)')), | ||
|  |   ('r', 'r', 'a', GeomFromText('POINT(152 39)')), | ||
|  |   ('y', 'p', 'o', GeomFromText('POINT(45 27)')), | ||
|  |   ('p', 'n', 'm', GeomFromText('POINT(228 148)')), | ||
|  |   ('e', 'g', 'e', GeomFromText('POINT(88 81)')), | ||
|  |   ('m', 'a', 'h', GeomFromText('POINT(35 29)')), | ||
|  |   ('m', 'h', 'f', GeomFromText('POINT(30 71)')), | ||
|  |   ('h', 'k', 'i', GeomFromText('POINT(244 78)')), | ||
|  |   ('z', 'v', 'd', GeomFromText('POINT(241 38)')), | ||
|  |   ('q', 'l', 'j', GeomFromText('POINT(13 71)')), | ||
|  |   ('s', 'p', 'g', GeomFromText('POINT(108 38)')), | ||
|  |   ('q', 's', 'j', GeomFromText('POINT(92 101)')), | ||
|  |   ('l', 'h', 'g', GeomFromText('POINT(120 78)')), | ||
|  |   ('w', 't', 'b', GeomFromText('POINT(193 109)')), | ||
|  |   ('b', 's', 's', GeomFromText('POINT(223 211)')), | ||
|  |   ('w', 'w', 'y', GeomFromText('POINT(122 42)')), | ||
|  |   ('q', 'c', 'c', GeomFromText('POINT(104 102)')), | ||
|  |   ('w', 'g', 'n', GeomFromText('POINT(213 120)')), | ||
|  |   ('p', 'q', 'a', GeomFromText('POINT(247 148)')), | ||
|  |   ('c', 'z', 'e', GeomFromText('POINT(18 106)')), | ||
|  |   ('z', 'u', 'n', GeomFromText('POINT(70 133)')), | ||
|  |   ('j', 'n', 'x', GeomFromText('POINT(232 13)')), | ||
|  |   ('e', 'h', 'f', GeomFromText('POINT(22 135)')), | ||
|  |   ('w', 'l', 'f', GeomFromText('POINT(9 180)')), | ||
|  |   ('a', 'v', 'q', GeomFromText('POINT(163 228)')), | ||
|  |   ('i', 'z', 'o', GeomFromText('POINT(180 100)')), | ||
|  |   ('e', 'c', 'l', GeomFromText('POINT(182 231)')), | ||
|  |   ('c', 'k', 'o', GeomFromText('POINT(19 60)')), | ||
|  |   ('q', 'f', 'p', GeomFromText('POINT(79 95)')), | ||
|  |   ('m', 'd', 'r', GeomFromText('POINT(3 127)')), | ||
|  |   ('m', 'e', 't', GeomFromText('POINT(136 154)')), | ||
|  |   ('w', 'w', 'w', GeomFromText('POINT(102 15)')), | ||
|  |   ('l', 'n', 'q', GeomFromText('POINT(71 196)')), | ||
|  |   ('p', 'k', 'c', GeomFromText('POINT(47 139)')), | ||
|  |   ('j', 'o', 'r', GeomFromText('POINT(177 128)')), | ||
|  |   ('j', 'q', 'a', GeomFromText('POINT(170 6)')), | ||
|  |   ('b', 'a', 'o', GeomFromText('POINT(63 211)')), | ||
|  |   ('g', 's', 'o', GeomFromText('POINT(144 251)')), | ||
|  |   ('w', 'u', 'w', GeomFromText('POINT(221 214)')), | ||
|  |   ('g', 'a', 'm', GeomFromText('POINT(14 102)')), | ||
|  |   ('u', 'q', 'z', GeomFromText('POINT(86 200)')), | ||
|  |   ('k', 'a', 'm', GeomFromText('POINT(144 222)')), | ||
|  |   ('j', 'u', 'r', GeomFromText('POINT(216 142)')), | ||
|  |   ('q', 'k', 'v', GeomFromText('POINT(121 236)')), | ||
|  |   ('p', 'o', 'r', GeomFromText('POINT(108 102)')), | ||
|  |   ('b', 'd', 'x', GeomFromText('POINT(127 198)')), | ||
|  |   ('k', 's', 'a', GeomFromText('POINT(2 150)')), | ||
|  |   ('f', 'm', 'f', GeomFromText('POINT(160 191)')), | ||
|  |   ('q', 'y', 'x', GeomFromText('POINT(98 111)')), | ||
|  |   ('o', 'f', 'm', GeomFromText('POINT(232 218)')), | ||
|  |   ('c', 'w', 'j', GeomFromText('POINT(156 165)')), | ||
|  |   ('s', 'q', 'v', GeomFromText('POINT(98 161)')); | ||
|  | SET @@RAND_SEED1=692635050, @@RAND_SEED2=297339954; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=159925977, @@RAND_SEED2=942570618; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=328169745, @@RAND_SEED2=410451954; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=178507359, @@RAND_SEED2=332493072; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=1034033013, @@RAND_SEED2=558966507; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(230 9)') where  c1 like 'y%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(95 35)') where  c1 like 'j%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(93 99)') where  c1 like 'a%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(19 81)') where  c1 like 'r%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(20 177)') where  c1 like 'h%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(221 193)') where  c1 like 'u%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(195 205)') where  c1 like 'd%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(15 213)') where  c1 like 'u%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(214 63)') where  c1 like 'n%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(243 171)') where  c1 like 'c%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(198 82)') where  c1 like 'y%'; | ||
|  | INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES | ||
|  |   ('f', 'y', 'p', GeomFromText('POINT(109 235)')), | ||
|  |   ('b', 'e', 'v', GeomFromText('POINT(20 48)')), | ||
|  |   ('i', 'u', 'f', GeomFromText('POINT(15 55)')), | ||
|  |   ('o', 'r', 'z', GeomFromText('POINT(105 64)')), | ||
|  |   ('a', 'p', 'a', GeomFromText('POINT(142 236)')), | ||
|  |   ('g', 'i', 'k', GeomFromText('POINT(10 49)')), | ||
|  |   ('x', 'z', 'x', GeomFromText('POINT(192 200)')), | ||
|  |   ('c', 'v', 'r', GeomFromText('POINT(94 168)')), | ||
|  |   ('y', 'z', 'e', GeomFromText('POINT(141 51)')), | ||
|  |   ('h', 'm', 'd', GeomFromText('POINT(35 251)')), | ||
|  |   ('v', 'm', 'q', GeomFromText('POINT(44 90)')), | ||
|  |   ('j', 'l', 'z', GeomFromText('POINT(67 237)')), | ||
|  |   ('i', 'v', 'a', GeomFromText('POINT(75 14)')), | ||
|  |   ('b', 'q', 't', GeomFromText('POINT(153 33)')), | ||
|  |   ('e', 'm', 'a', GeomFromText('POINT(247 49)')), | ||
|  |   ('l', 'y', 'g', GeomFromText('POINT(56 203)')), | ||
|  |   ('v', 'o', 'r', GeomFromText('POINT(90 54)')), | ||
|  |   ('r', 'n', 'd', GeomFromText('POINT(135 83)')), | ||
|  |   ('j', 't', 'u', GeomFromText('POINT(174 239)')), | ||
|  |   ('u', 'n', 'g', GeomFromText('POINT(104 191)')), | ||
|  |   ('p', 'q', 'y', GeomFromText('POINT(63 171)')), | ||
|  |   ('o', 'q', 'p', GeomFromText('POINT(192 103)')), | ||
|  |   ('f', 'x', 'e', GeomFromText('POINT(244 30)')), | ||
|  |   ('n', 'x', 'c', GeomFromText('POINT(92 103)')), | ||
|  |   ('r', 'q', 'z', GeomFromText('POINT(166 20)')), | ||
|  |   ('s', 'a', 'j', GeomFromText('POINT(137 205)')), | ||
|  |   ('z', 't', 't', GeomFromText('POINT(99 134)')), | ||
|  |   ('o', 'm', 'j', GeomFromText('POINT(217 3)')), | ||
|  |   ('n', 'h', 'j', GeomFromText('POINT(211 17)')), | ||
|  |   ('v', 'v', 'a', GeomFromText('POINT(41 137)')), | ||
|  |   ('q', 'o', 'j', GeomFromText('POINT(5 92)')), | ||
|  |   ('z', 'y', 'e', GeomFromText('POINT(175 212)')), | ||
|  |   ('j', 'z', 'h', GeomFromText('POINT(224 194)')), | ||
|  |   ('a', 'g', 'm', GeomFromText('POINT(31 119)')), | ||
|  |   ('p', 'c', 'f', GeomFromText('POINT(17 221)')), | ||
|  |   ('t', 'h', 'k', GeomFromText('POINT(26 203)')), | ||
|  |   ('u', 'w', 'p', GeomFromText('POINT(47 185)')), | ||
|  |   ('z', 'a', 'c', GeomFromText('POINT(61 133)')), | ||
|  |   ('u', 'k', 'a', GeomFromText('POINT(210 115)')), | ||
|  |   ('k', 'f', 'h', GeomFromText('POINT(125 113)')), | ||
|  |   ('t', 'v', 'y', GeomFromText('POINT(12 239)')), | ||
|  |   ('u', 'v', 'd', GeomFromText('POINT(90 24)')), | ||
|  |   ('m', 'y', 'w', GeomFromText('POINT(25 243)')), | ||
|  |   ('d', 'n', 'g', GeomFromText('POINT(122 92)')), | ||
|  |   ('z', 'm', 'f', GeomFromText('POINT(235 110)')), | ||
|  |   ('q', 'd', 'f', GeomFromText('POINT(233 217)')), | ||
|  |   ('a', 'v', 'u', GeomFromText('POINT(69 59)')), | ||
|  |   ('x', 'k', 'p', GeomFromText('POINT(240 14)')), | ||
|  |   ('i', 'v', 'r', GeomFromText('POINT(154 42)')), | ||
|  |   ('w', 'h', 'l', GeomFromText('POINT(178 156)')), | ||
|  |   ('d', 'h', 'n', GeomFromText('POINT(65 157)')), | ||
|  |   ('c', 'k', 'z', GeomFromText('POINT(62 33)')), | ||
|  |   ('e', 'l', 'w', GeomFromText('POINT(162 1)')), | ||
|  |   ('r', 'f', 'i', GeomFromText('POINT(127 71)')), | ||
|  |   ('q', 'm', 'c', GeomFromText('POINT(63 118)')), | ||
|  |   ('c', 'h', 'u', GeomFromText('POINT(205 203)')), | ||
|  |   ('d', 't', 'p', GeomFromText('POINT(234 87)')), | ||
|  |   ('s', 'g', 'h', GeomFromText('POINT(149 34)')), | ||
|  |   ('o', 'b', 'q', GeomFromText('POINT(159 179)')), | ||
|  |   ('k', 'u', 'f', GeomFromText('POINT(202 254)')), | ||
|  |   ('u', 'f', 'g', GeomFromText('POINT(70 15)')), | ||
|  |   ('x', 's', 'b', GeomFromText('POINT(25 181)')), | ||
|  |   ('s', 'c', 'g', GeomFromText('POINT(252 17)')), | ||
|  |   ('a', 'c', 'f', GeomFromText('POINT(89 67)')), | ||
|  |   ('r', 'e', 'q', GeomFromText('POINT(55 54)')), | ||
|  |   ('f', 'i', 'k', GeomFromText('POINT(178 230)')), | ||
|  |   ('p', 'e', 'l', GeomFromText('POINT(198 28)')), | ||
|  |   ('w', 'o', 'd', GeomFromText('POINT(204 189)')), | ||
|  |   ('c', 'a', 'g', GeomFromText('POINT(230 178)')), | ||
|  |   ('r', 'o', 'e', GeomFromText('POINT(61 116)')), | ||
|  |   ('w', 'a', 'a', GeomFromText('POINT(178 237)')), | ||
|  |   ('v', 'd', 'e', GeomFromText('POINT(70 85)')), | ||
|  |   ('k', 'c', 'e', GeomFromText('POINT(147 118)')), | ||
|  |   ('d', 'q', 't', GeomFromText('POINT(218 77)')), | ||
|  |   ('k', 'g', 'f', GeomFromText('POINT(192 113)')), | ||
|  |   ('w', 'n', 'e', GeomFromText('POINT(92 124)')), | ||
|  |   ('r', 'm', 'q', GeomFromText('POINT(130 65)')), | ||
|  |   ('o', 'r', 'r', GeomFromText('POINT(174 233)')), | ||
|  |   ('k', 'n', 't', GeomFromText('POINT(175 147)')), | ||
|  |   ('q', 'm', 'r', GeomFromText('POINT(18 208)')), | ||
|  |   ('l', 'd', 'i', GeomFromText('POINT(13 104)')), | ||
|  |   ('w', 'o', 'y', GeomFromText('POINT(207 39)')), | ||
|  |   ('p', 'u', 'o', GeomFromText('POINT(114 31)')), | ||
|  |   ('y', 'a', 'p', GeomFromText('POINT(106 59)')), | ||
|  |   ('a', 'x', 'z', GeomFromText('POINT(17 57)')), | ||
|  |   ('v', 'h', 'x', GeomFromText('POINT(170 13)')), | ||
|  |   ('t', 's', 'u', GeomFromText('POINT(84 18)')), | ||
|  |   ('z', 'z', 'f', GeomFromText('POINT(250 197)')), | ||
|  |   ('l', 'z', 't', GeomFromText('POINT(59 80)')), | ||
|  |   ('j', 'g', 's', GeomFromText('POINT(54 26)')), | ||
|  |   ('g', 'v', 'm', GeomFromText('POINT(89 98)')), | ||
|  |   ('q', 'v', 'b', GeomFromText('POINT(39 240)')), | ||
|  |   ('x', 'k', 'v', GeomFromText('POINT(246 207)')), | ||
|  |   ('k', 'u', 'i', GeomFromText('POINT(105 111)')), | ||
|  |   ('w', 'z', 's', GeomFromText('POINT(235 8)')), | ||
|  |   ('d', 'd', 'd', GeomFromText('POINT(105 4)')), | ||
|  |   ('c', 'z', 'q', GeomFromText('POINT(13 140)')), | ||
|  |   ('m', 'k', 'i', GeomFromText('POINT(208 120)')), | ||
|  |   ('g', 'a', 'g', GeomFromText('POINT(9 182)')), | ||
|  |   ('z', 'j', 'r', GeomFromText('POINT(149 153)')), | ||
|  |   ('h', 'f', 'g', GeomFromText('POINT(81 236)')), | ||
|  |   ('m', 'e', 'q', GeomFromText('POINT(209 215)')), | ||
|  |   ('c', 'h', 'y', GeomFromText('POINT(235 70)')), | ||
|  |   ('i', 'e', 'g', GeomFromText('POINT(138 26)')), | ||
|  |   ('m', 't', 'u', GeomFromText('POINT(119 237)')), | ||
|  |   ('o', 'w', 's', GeomFromText('POINT(193 166)')), | ||
|  |   ('f', 'm', 'q', GeomFromText('POINT(85 96)')), | ||
|  |   ('x', 'l', 'x', GeomFromText('POINT(58 115)')), | ||
|  |   ('x', 'q', 'u', GeomFromText('POINT(108 210)')), | ||
|  |   ('b', 'h', 'i', GeomFromText('POINT(250 139)')), | ||
|  |   ('y', 'd', 'x', GeomFromText('POINT(199 135)')), | ||
|  |   ('w', 'h', 'p', GeomFromText('POINT(247 233)')), | ||
|  |   ('p', 'z', 't', GeomFromText('POINT(148 249)')), | ||
|  |   ('q', 'a', 'u', GeomFromText('POINT(174 78)')), | ||
|  |   ('v', 't', 'm', GeomFromText('POINT(70 228)')), | ||
|  |   ('t', 'n', 'f', GeomFromText('POINT(123 2)')), | ||
|  |   ('x', 't', 'b', GeomFromText('POINT(35 50)')), | ||
|  |   ('r', 'j', 'f', GeomFromText('POINT(200 51)')), | ||
|  |   ('s', 'q', 'o', GeomFromText('POINT(23 184)')), | ||
|  |   ('u', 'v', 'z', GeomFromText('POINT(7 113)')), | ||
|  |   ('v', 'u', 'l', GeomFromText('POINT(145 190)')), | ||
|  |   ('o', 'k', 'i', GeomFromText('POINT(161 122)')), | ||
|  |   ('l', 'y', 'e', GeomFromText('POINT(17 232)')), | ||
|  |   ('t', 'b', 'e', GeomFromText('POINT(120 50)')), | ||
|  |   ('e', 's', 'u', GeomFromText('POINT(254 1)')), | ||
|  |   ('d', 'd', 'u', GeomFromText('POINT(167 140)')), | ||
|  |   ('o', 'b', 'x', GeomFromText('POINT(186 237)')), | ||
|  |   ('m', 's', 's', GeomFromText('POINT(172 149)')), | ||
|  |   ('t', 'y', 'a', GeomFromText('POINT(149 85)')), | ||
|  |   ('x', 't', 'r', GeomFromText('POINT(10 165)')), | ||
|  |   ('g', 'c', 'e', GeomFromText('POINT(95 165)')), | ||
|  |   ('e', 'e', 'z', GeomFromText('POINT(98 65)')), | ||
|  |   ('f', 'v', 'i', GeomFromText('POINT(149 144)')), | ||
|  |   ('o', 'p', 'm', GeomFromText('POINT(233 67)')), | ||
|  |   ('t', 'u', 'b', GeomFromText('POINT(109 215)')), | ||
|  |   ('o', 'o', 'b', GeomFromText('POINT(130 48)')), | ||
|  |   ('e', 'm', 'h', GeomFromText('POINT(88 189)')), | ||
|  |   ('e', 'v', 'y', GeomFromText('POINT(55 29)')), | ||
|  |   ('e', 't', 'm', GeomFromText('POINT(129 55)')), | ||
|  |   ('p', 'p', 'i', GeomFromText('POINT(126 222)')), | ||
|  |   ('c', 'i', 'c', GeomFromText('POINT(19 158)')), | ||
|  |   ('c', 'b', 's', GeomFromText('POINT(13 19)')), | ||
|  |   ('u', 'y', 'a', GeomFromText('POINT(114 5)')), | ||
|  |   ('a', 'o', 'f', GeomFromText('POINT(227 232)')), | ||
|  |   ('t', 'c', 'z', GeomFromText('POINT(63 62)')), | ||
|  |   ('d', 'o', 'k', GeomFromText('POINT(48 228)')), | ||
|  |   ('x', 'c', 'e', GeomFromText('POINT(204 2)')), | ||
|  |   ('e', 'e', 'g', GeomFromText('POINT(125 43)')), | ||
|  |   ('o', 'r', 'f', GeomFromText('POINT(171 140)')); | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(163 157)') where  c1 like 'w%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(53 151)') where  c1 like 'd%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(96 183)') where  c1 like 'r%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(57 91)') where  c1 like 'q%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(202 110)') where  c1 like 'c%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(120 137)') where  c1 like 'w%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(207 147)') where  c1 like 'c%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(31 125)') where  c1 like 'e%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(27 36)') where  c1 like 'r%'; | ||
|  | INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES | ||
|  |   ('b', 'c', 'e', GeomFromText('POINT(41 137)')), | ||
|  |   ('p', 'y', 'k', GeomFromText('POINT(50 22)')), | ||
|  |   ('s', 'c', 'h', GeomFromText('POINT(208 173)')), | ||
|  |   ('x', 'u', 'l', GeomFromText('POINT(199 175)')), | ||
|  |   ('s', 'r', 'h', GeomFromText('POINT(85 192)')), | ||
|  |   ('j', 'k', 'u', GeomFromText('POINT(18 25)')), | ||
|  |   ('p', 'w', 'h', GeomFromText('POINT(152 197)')), | ||
|  |   ('e', 'd', 'c', GeomFromText('POINT(229 3)')), | ||
|  |   ('o', 'x', 'k', GeomFromText('POINT(187 155)')), | ||
|  |   ('o', 'b', 'k', GeomFromText('POINT(208 150)')), | ||
|  |   ('d', 'a', 'j', GeomFromText('POINT(70 87)')), | ||
|  |   ('f', 'e', 'k', GeomFromText('POINT(156 96)')), | ||
|  |   ('u', 'y', 'p', GeomFromText('POINT(239 193)')), | ||
|  |   ('n', 'v', 'p', GeomFromText('POINT(223 98)')), | ||
|  |   ('z', 'j', 'r', GeomFromText('POINT(87 89)')), | ||
|  |   ('h', 'x', 'x', GeomFromText('POINT(92 0)')), | ||
|  |   ('r', 'v', 'r', GeomFromText('POINT(159 139)')), | ||
|  |   ('v', 'g', 'g', GeomFromText('POINT(16 229)')), | ||
|  |   ('z', 'k', 'u', GeomFromText('POINT(99 52)')), | ||
|  |   ('p', 'p', 'o', GeomFromText('POINT(105 125)')), | ||
|  |   ('w', 'h', 'y', GeomFromText('POINT(105 154)')), | ||
|  |   ('v', 'y', 'z', GeomFromText('POINT(134 238)')), | ||
|  |   ('x', 'o', 'o', GeomFromText('POINT(178 88)')), | ||
|  |   ('z', 'w', 'd', GeomFromText('POINT(123 60)')), | ||
|  |   ('q', 'f', 'u', GeomFromText('POINT(64 90)')), | ||
|  |   ('s', 'n', 't', GeomFromText('POINT(50 138)')), | ||
|  |   ('v', 'p', 't', GeomFromText('POINT(114 91)')), | ||
|  |   ('a', 'o', 'n', GeomFromText('POINT(78 43)')), | ||
|  |   ('k', 'u', 'd', GeomFromText('POINT(185 161)')), | ||
|  |   ('w', 'd', 'n', GeomFromText('POINT(25 92)')), | ||
|  |   ('k', 'w', 'a', GeomFromText('POINT(59 238)')), | ||
|  |   ('t', 'c', 'f', GeomFromText('POINT(65 87)')), | ||
|  |   ('g', 's', 'p', GeomFromText('POINT(238 126)')), | ||
|  |   ('d', 'n', 'y', GeomFromText('POINT(107 173)')), | ||
|  |   ('l', 'a', 'w', GeomFromText('POINT(125 152)')), | ||
|  |   ('m', 'd', 'j', GeomFromText('POINT(146 53)')), | ||
|  |   ('q', 'm', 'c', GeomFromText('POINT(217 187)')), | ||
|  |   ('i', 'r', 'r', GeomFromText('POINT(6 113)')), | ||
|  |   ('e', 'j', 'b', GeomFromText('POINT(37 83)')), | ||
|  |   ('w', 'w', 'h', GeomFromText('POINT(83 199)')), | ||
|  |   ('k', 'b', 's', GeomFromText('POINT(170 64)')), | ||
|  |   ('s', 'b', 'c', GeomFromText('POINT(163 130)')), | ||
|  |   ('c', 'h', 'a', GeomFromText('POINT(141 3)')), | ||
|  |   ('k', 'j', 'u', GeomFromText('POINT(143 76)')), | ||
|  |   ('r', 'h', 'o', GeomFromText('POINT(243 92)')), | ||
|  |   ('i', 'd', 'b', GeomFromText('POINT(205 13)')), | ||
|  |   ('r', 'y', 'q', GeomFromText('POINT(138 8)')), | ||
|  |   ('m', 'o', 'i', GeomFromText('POINT(36 45)')), | ||
|  |   ('v', 'g', 'm', GeomFromText('POINT(0 40)')), | ||
|  |   ('f', 'e', 'i', GeomFromText('POINT(76 6)')), | ||
|  |   ('c', 'q', 'q', GeomFromText('POINT(115 248)')), | ||
|  |   ('x', 'c', 'i', GeomFromText('POINT(29 74)')), | ||
|  |   ('l', 's', 't', GeomFromText('POINT(83 18)')), | ||
|  |   ('t', 't', 'a', GeomFromText('POINT(26 168)')), | ||
|  |   ('u', 'n', 'x', GeomFromText('POINT(200 110)')), | ||
|  |   ('j', 'b', 'd', GeomFromText('POINT(216 136)')), | ||
|  |   ('s', 'p', 'w', GeomFromText('POINT(38 156)')), | ||
|  |   ('f', 'b', 'v', GeomFromText('POINT(29 186)')), | ||
|  |   ('v', 'e', 'r', GeomFromText('POINT(149 40)')), | ||
|  |   ('v', 't', 'm', GeomFromText('POINT(184 24)')), | ||
|  |   ('y', 'g', 'a', GeomFromText('POINT(219 105)')), | ||
|  |   ('s', 'f', 'i', GeomFromText('POINT(114 130)')), | ||
|  |   ('e', 'q', 'h', GeomFromText('POINT(203 135)')), | ||
|  |   ('h', 'g', 'b', GeomFromText('POINT(9 208)')), | ||
|  |   ('o', 'l', 'r', GeomFromText('POINT(245 79)')), | ||
|  |   ('s', 's', 'v', GeomFromText('POINT(238 198)')), | ||
|  |   ('w', 'w', 'z', GeomFromText('POINT(209 232)')), | ||
|  |   ('v', 'd', 'n', GeomFromText('POINT(30 193)')), | ||
|  |   ('q', 'w', 'k', GeomFromText('POINT(133 18)')), | ||
|  |   ('o', 'h', 'o', GeomFromText('POINT(42 140)')), | ||
|  |   ('f', 'f', 'h', GeomFromText('POINT(145 1)')), | ||
|  |   ('u', 's', 'r', GeomFromText('POINT(70 62)')), | ||
|  |   ('x', 'n', 'q', GeomFromText('POINT(33 86)')), | ||
|  |   ('u', 'p', 'v', GeomFromText('POINT(232 220)')), | ||
|  |   ('z', 'e', 'a', GeomFromText('POINT(130 69)')), | ||
|  |   ('r', 'u', 'z', GeomFromText('POINT(243 241)')), | ||
|  |   ('b', 'n', 't', GeomFromText('POINT(120 12)')), | ||
|  |   ('u', 'f', 's', GeomFromText('POINT(190 212)')), | ||
|  |   ('a', 'd', 'q', GeomFromText('POINT(235 191)')), | ||
|  |   ('f', 'q', 'm', GeomFromText('POINT(176 2)')), | ||
|  |   ('n', 'c', 's', GeomFromText('POINT(218 163)')), | ||
|  |   ('e', 'm', 'h', GeomFromText('POINT(163 108)')), | ||
|  |   ('c', 'f', 'l', GeomFromText('POINT(220 115)')), | ||
|  |   ('c', 'v', 'q', GeomFromText('POINT(66 45)')), | ||
|  |   ('w', 'v', 'x', GeomFromText('POINT(251 220)')), | ||
|  |   ('f', 'w', 'z', GeomFromText('POINT(146 149)')), | ||
|  |   ('h', 'n', 'h', GeomFromText('POINT(148 128)')), | ||
|  |   ('y', 'k', 'v', GeomFromText('POINT(28 110)')), | ||
|  |   ('c', 'x', 'q', GeomFromText('POINT(13 13)')), | ||
|  |   ('e', 'd', 's', GeomFromText('POINT(91 190)')), | ||
|  |   ('c', 'w', 'c', GeomFromText('POINT(10 231)')), | ||
|  |   ('u', 'j', 'n', GeomFromText('POINT(250 21)')), | ||
|  |   ('w', 'n', 'x', GeomFromText('POINT(141 69)')), | ||
|  |   ('f', 'p', 'y', GeomFromText('POINT(228 246)')), | ||
|  |   ('d', 'q', 'f', GeomFromText('POINT(194 22)')), | ||
|  |   ('d', 'z', 'l', GeomFromText('POINT(233 181)')), | ||
|  |   ('c', 'a', 'q', GeomFromText('POINT(183 96)')), | ||
|  |   ('m', 'i', 'd', GeomFromText('POINT(117 226)')), | ||
|  |   ('z', 'y', 'y', GeomFromText('POINT(62 81)')), | ||
|  |   ('g', 'v', 'm', GeomFromText('POINT(66 158)')); | ||
|  | SET @@RAND_SEED1=481064922, @@RAND_SEED2=438133497; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=280535103, @@RAND_SEED2=444518646; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=1072017234, @@RAND_SEED2=484203885; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=358851897, @@RAND_SEED2=358495224; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | SET @@RAND_SEED1=509031459, @@RAND_SEED2=675962925; | ||
|  | DELETE FROM t1 ORDER BY RAND() LIMIT 10; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(61 203)') where  c1 like 'y%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(202 194)') where  c1 like 'f%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(228 18)') where  c1 like 'h%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(88 18)') where  c1 like 'l%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(176 94)') where  c1 like 'e%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(44 47)') where  c1 like 'g%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(95 191)') where  c1 like 'b%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(179 218)') where  c1 like 'y%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(239 40)') where  c1 like 'g%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(248 41)') where  c1 like 'q%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(167 82)') where  c1 like 't%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(13 104)') where  c1 like 'u%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(139 84)') where  c1 like 'a%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(145 108)') where  c1 like 'p%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(147 57)') where  c1 like 't%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(217 144)') where  c1 like 'n%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(160 224)') where  c1 like 'w%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(38 28)') where  c1 like 'j%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(104 114)') where  c1 like 'q%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(88 19)') where  c1 like 'c%'; | ||
|  | INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES | ||
|  |   ('f', 'x', 'p', GeomFromText('POINT(92 181)')), | ||
|  |   ('s', 'i', 'c', GeomFromText('POINT(49 60)')), | ||
|  |   ('c', 'c', 'i', GeomFromText('POINT(7 57)')), | ||
|  |   ('n', 'g', 'k', GeomFromText('POINT(252 105)')), | ||
|  |   ('g', 'b', 'm', GeomFromText('POINT(180 11)')), | ||
|  |   ('u', 'l', 'r', GeomFromText('POINT(32 90)')), | ||
|  |   ('c', 'x', 'e', GeomFromText('POINT(143 24)')), | ||
|  |   ('x', 'u', 'a', GeomFromText('POINT(123 92)')), | ||
|  |   ('s', 'b', 'h', GeomFromText('POINT(190 108)')), | ||
|  |   ('c', 'x', 'b', GeomFromText('POINT(104 100)')), | ||
|  |   ('i', 'd', 't', GeomFromText('POINT(214 104)')), | ||
|  |   ('r', 'w', 'g', GeomFromText('POINT(29 67)')), | ||
|  |   ('b', 'f', 'g', GeomFromText('POINT(149 46)')), | ||
|  |   ('r', 'r', 'd', GeomFromText('POINT(242 196)')), | ||
|  |   ('j', 'l', 'a', GeomFromText('POINT(90 196)')), | ||
|  |   ('e', 't', 'b', GeomFromText('POINT(190 64)')), | ||
|  |   ('l', 'x', 'w', GeomFromText('POINT(250 73)')), | ||
|  |   ('q', 'y', 'r', GeomFromText('POINT(120 182)')), | ||
|  |   ('s', 'j', 'a', GeomFromText('POINT(180 175)')), | ||
|  |   ('n', 'i', 'y', GeomFromText('POINT(124 136)')), | ||
|  |   ('s', 'x', 's', GeomFromText('POINT(176 209)')), | ||
|  |   ('u', 'f', 's', GeomFromText('POINT(215 173)')), | ||
|  |   ('m', 'j', 'x', GeomFromText('POINT(44 140)')), | ||
|  |   ('v', 'g', 'x', GeomFromText('POINT(177 233)')), | ||
|  |   ('u', 't', 'b', GeomFromText('POINT(136 197)')), | ||
|  |   ('f', 'g', 'b', GeomFromText('POINT(10 8)')), | ||
|  |   ('v', 'c', 'j', GeomFromText('POINT(13 81)')), | ||
|  |   ('d', 's', 'q', GeomFromText('POINT(200 100)')), | ||
|  |   ('a', 'p', 'j', GeomFromText('POINT(33 40)')), | ||
|  |   ('i', 'c', 'g', GeomFromText('POINT(168 204)')), | ||
|  |   ('k', 'h', 'i', GeomFromText('POINT(93 243)')), | ||
|  |   ('s', 'b', 's', GeomFromText('POINT(157 13)')), | ||
|  |   ('v', 'l', 'l', GeomFromText('POINT(103 6)')), | ||
|  |   ('r', 'b', 'k', GeomFromText('POINT(244 137)')), | ||
|  |   ('l', 'd', 'r', GeomFromText('POINT(162 254)')), | ||
|  |   ('q', 'b', 'z', GeomFromText('POINT(136 246)')), | ||
|  |   ('x', 'x', 'p', GeomFromText('POINT(120 37)')), | ||
|  |   ('m', 'e', 'z', GeomFromText('POINT(203 167)')), | ||
|  |   ('q', 'n', 'p', GeomFromText('POINT(94 119)')), | ||
|  |   ('b', 'g', 'u', GeomFromText('POINT(93 248)')), | ||
|  |   ('r', 'v', 'v', GeomFromText('POINT(53 88)')), | ||
|  |   ('y', 'a', 'i', GeomFromText('POINT(98 219)')), | ||
|  |   ('a', 's', 'g', GeomFromText('POINT(173 138)')), | ||
|  |   ('c', 'a', 't', GeomFromText('POINT(235 135)')), | ||
|  |   ('q', 'm', 'd', GeomFromText('POINT(224 208)')), | ||
|  |   ('e', 'p', 'k', GeomFromText('POINT(161 238)')), | ||
|  |   ('n', 'g', 'q', GeomFromText('POINT(35 204)')), | ||
|  |   ('t', 't', 'x', GeomFromText('POINT(230 178)')), | ||
|  |   ('w', 'f', 'a', GeomFromText('POINT(150 221)')), | ||
|  |   ('z', 'm', 'z', GeomFromText('POINT(119 42)')), | ||
|  |   ('l', 'j', 's', GeomFromText('POINT(97 96)')), | ||
|  |   ('f', 'z', 'x', GeomFromText('POINT(208 65)')), | ||
|  |   ('i', 'v', 'c', GeomFromText('POINT(145 79)')), | ||
|  |   ('l', 'f', 'k', GeomFromText('POINT(83 234)')), | ||
|  |   ('u', 'a', 's', GeomFromText('POINT(250 49)')), | ||
|  |   ('o', 'k', 'p', GeomFromText('POINT(46 50)')), | ||
|  |   ('d', 'e', 'z', GeomFromText('POINT(30 198)')), | ||
|  |   ('r', 'r', 'l', GeomFromText('POINT(78 189)')), | ||
|  |   ('y', 'l', 'f', GeomFromText('POINT(188 132)')), | ||
|  |   ('d', 'q', 'm', GeomFromText('POINT(247 107)')), | ||
|  |   ('p', 'j', 'n', GeomFromText('POINT(148 227)')), | ||
|  |   ('b', 'o', 'i', GeomFromText('POINT(172 25)')), | ||
|  |   ('e', 'v', 'd', GeomFromText('POINT(94 248)')), | ||
|  |   ('q', 'd', 'f', GeomFromText('POINT(15 29)')), | ||
|  |   ('w', 'b', 'b', GeomFromText('POINT(74 111)')), | ||
|  |   ('g', 'q', 'f', GeomFromText('POINT(107 215)')), | ||
|  |   ('o', 'h', 'r', GeomFromText('POINT(25 168)')), | ||
|  |   ('u', 't', 'w', GeomFromText('POINT(251 188)')), | ||
|  |   ('h', 's', 'w', GeomFromText('POINT(254 247)')), | ||
|  |   ('f', 'f', 'b', GeomFromText('POINT(166 103)')); | ||
|  | SET @@RAND_SEED1=866613816, @@RAND_SEED2=92289615; | ||
|  | INSERT INTO t1 (c2, c1, c3, spatial_point) VALUES | ||
|  |   ('l', 'c', 'l', GeomFromText('POINT(202 98)')), | ||
|  |   ('k', 'c', 'b', GeomFromText('POINT(46 206)')), | ||
|  |   ('r', 'y', 'm', GeomFromText('POINT(74 140)')), | ||
|  |   ('y', 'z', 'd', GeomFromText('POINT(200 160)')), | ||
|  |   ('s', 'y', 's', GeomFromText('POINT(156 205)')), | ||
|  |   ('u', 'v', 'p', GeomFromText('POINT(86 82)')), | ||
|  |   ('j', 's', 's', GeomFromText('POINT(91 233)')), | ||
|  |   ('x', 'j', 'f', GeomFromText('POINT(3 14)')), | ||
|  |   ('l', 'z', 'v', GeomFromText('POINT(123 156)')), | ||
|  |   ('h', 'i', 'o', GeomFromText('POINT(145 229)')), | ||
|  |   ('o', 'r', 'd', GeomFromText('POINT(15 22)')), | ||
|  |   ('f', 'x', 't', GeomFromText('POINT(21 60)')), | ||
|  |   ('t', 'g', 'h', GeomFromText('POINT(50 153)')), | ||
|  |   ('g', 'u', 'b', GeomFromText('POINT(82 85)')), | ||
|  |   ('v', 'a', 'p', GeomFromText('POINT(231 178)')), | ||
|  |   ('n', 'v', 'o', GeomFromText('POINT(183 25)')), | ||
|  |   ('j', 'n', 'm', GeomFromText('POINT(50 144)')), | ||
|  |   ('e', 'f', 'i', GeomFromText('POINT(46 16)')), | ||
|  |   ('d', 'w', 'a', GeomFromText('POINT(66 6)')), | ||
|  |   ('f', 'x', 'a', GeomFromText('POINT(107 197)')), | ||
|  |   ('m', 'o', 'a', GeomFromText('POINT(142 80)')), | ||
|  |   ('q', 'l', 'g', GeomFromText('POINT(251 23)')), | ||
|  |   ('c', 's', 's', GeomFromText('POINT(158 43)')), | ||
|  |   ('y', 'd', 'o', GeomFromText('POINT(196 228)')), | ||
|  |   ('d', 'p', 'l', GeomFromText('POINT(107 5)')), | ||
|  |   ('h', 'a', 'b', GeomFromText('POINT(183 166)')), | ||
|  |   ('m', 'w', 'p', GeomFromText('POINT(19 59)')), | ||
|  |   ('b', 'y', 'o', GeomFromText('POINT(178 30)')), | ||
|  |   ('x', 'w', 'i', GeomFromText('POINT(168 94)')), | ||
|  |   ('t', 'k', 'z', GeomFromText('POINT(171 5)')), | ||
|  |   ('r', 'm', 'a', GeomFromText('POINT(222 19)')), | ||
|  |   ('u', 'v', 'e', GeomFromText('POINT(224 80)')), | ||
|  |   ('q', 'r', 'k', GeomFromText('POINT(212 218)')), | ||
|  |   ('d', 'p', 'j', GeomFromText('POINT(169 7)')), | ||
|  |   ('d', 'r', 'v', GeomFromText('POINT(193 23)')), | ||
|  |   ('n', 'y', 'y', GeomFromText('POINT(130 178)')), | ||
|  |   ('m', 'z', 'r', GeomFromText('POINT(81 200)')), | ||
|  |   ('j', 'e', 'w', GeomFromText('POINT(145 239)')), | ||
|  |   ('v', 'h', 'x', GeomFromText('POINT(24 105)')), | ||
|  |   ('z', 'm', 'a', GeomFromText('POINT(175 129)')), | ||
|  |   ('b', 'c', 'v', GeomFromText('POINT(213 10)')), | ||
|  |   ('t', 't', 'u', GeomFromText('POINT(2 129)')), | ||
|  |   ('r', 's', 'v', GeomFromText('POINT(209 192)')), | ||
|  |   ('x', 'p', 'g', GeomFromText('POINT(43 63)')), | ||
|  |   ('t', 'e', 'u', GeomFromText('POINT(139 210)')), | ||
|  |   ('l', 'e', 't', GeomFromText('POINT(245 148)')), | ||
|  |   ('a', 'i', 'k', GeomFromText('POINT(167 195)')), | ||
|  |   ('m', 'o', 'h', GeomFromText('POINT(206 120)')), | ||
|  |   ('g', 'z', 's', GeomFromText('POINT(169 240)')), | ||
|  |   ('z', 'u', 's', GeomFromText('POINT(202 120)')), | ||
|  |   ('i', 'b', 'a', GeomFromText('POINT(216 18)')), | ||
|  |   ('w', 'y', 'g', GeomFromText('POINT(119 236)')), | ||
|  |   ('h', 'y', 'p', GeomFromText('POINT(161 24)')); | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(33 100)') where  c1 like 't%'; | ||
|  | UPDATE t1 set spatial_point=GeomFromText('POINT(41 46)') where  c1 like 'f%'; | ||
|  | CHECK TABLE t1 EXTENDED; | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | # | ||
|  | # Bug #30286 spatial index cause corruption and server crash! | ||
|  | # | ||
|  | 
 | ||
|  | create table t1 (a geometry not null, spatial index(a)); | ||
|  | insert into t1 values (POINT(1.1517219314031e+164, 131072)); | ||
|  | insert into t1 values (POINT(9.1248812352444e+192, 2.9740338169556e+284)); | ||
|  | insert into t1 values (POINT(4.7783097267365e-299, -0)); | ||
|  | insert into t1 values (POINT(1.49166814624e-154, 2.0880974297595e-53)); | ||
|  | insert into t1 values (POINT(4.0917382598702e+149, 1.2024538023802e+111)); | ||
|  | insert into t1 values (POINT(2.0349165139404e+236, 2.9993936277913e-241)); | ||
|  | insert into t1 values (POINT(2.5243548967072e-29, 1.2024538023802e+111)); | ||
|  | insert into t1 values (POINT(0, 6.9835074892995e-251)); | ||
|  | insert into t1 values (POINT(2.0880974297595e-53, 3.1050361846014e+231)); | ||
|  | insert into t1 values (POINT(2.8728483499323e-188, 2.4600631144627e+260)); | ||
|  | insert into t1 values (POINT(3.0517578125e-05, 2.0349165139404e+236)); | ||
|  | insert into t1 values (POINT(1.1517219314031e+164, 1.1818212630766e-125)); | ||
|  | insert into t1 values (POINT(2.481040258324e-265, 5.7766220027675e-275)); | ||
|  | insert into t1 values (POINT(2.0880974297595e-53, 2.5243548967072e-29)); | ||
|  | insert into t1 values (POINT(5.7766220027675e-275, 9.9464647281957e+86)); | ||
|  | insert into t1 values (POINT(2.2181357552967e+130, 3.7857669957337e-270)); | ||
|  | insert into t1 values (POINT(4.5767114681874e-246, 3.6893488147419e+19)); | ||
|  | insert into t1 values (POINT(4.5767114681874e-246, 3.7537584144024e+255)); | ||
|  | insert into t1 values (POINT(3.7857669957337e-270, 1.8033161362863e-130)); | ||
|  | insert into t1 values (POINT(0, 5.8774717541114e-39)); | ||
|  | insert into t1 values (POINT(1.1517219314031e+164, 2.2761049594727e-159)); | ||
|  | insert into t1 values (POINT(6.243497100632e+144, 3.7857669957337e-270)); | ||
|  | insert into t1 values (POINT(3.7857669957337e-270, 2.6355494858076e-82)); | ||
|  | insert into t1 values (POINT(2.0349165139404e+236, 3.8518598887745e-34)); | ||
|  | insert into t1 values (POINT(4.6566128730774e-10, 2.0880974297595e-53)); | ||
|  | insert into t1 values (POINT(2.0880974297595e-53, 1.8827498946116e-183)); | ||
|  | insert into t1 values (POINT(1.8033161362863e-130, 9.1248812352444e+192)); | ||
|  | insert into t1 values (POINT(4.7783097267365e-299, 2.2761049594727e-159)); | ||
|  | insert into t1 values (POINT(1.94906280228e+289, 1.2338789709327e-178)); | ||
|  | drop table t1; | ||
|  | 
 | ||
|  | # End of 4.1 tests | ||
|  | 
 | ||
|  | # | ||
|  | # bug #21790 (UNKNOWN ERROR on NULLs in RTree) | ||
|  | # | ||
|  | CREATE TABLE t1(foo GEOMETRY NOT NULL, SPATIAL INDEX(foo) ); | ||
|  | --error 1048 | ||
|  | INSERT INTO t1(foo) VALUES (NULL); | ||
|  | --error 1416 | ||
|  | INSERT INTO t1() VALUES (); | ||
|  | --error 1416 | ||
|  | INSERT INTO t1(foo) VALUES (''); | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | # | ||
|  | # Bug #23578: Corruption prevents Optimize table from working properly with a  | ||
|  | #             spatial index | ||
|  | # | ||
|  | 
 | ||
|  | CREATE TABLE t1 (a INT AUTO_INCREMENT, b POINT NOT NULL, KEY (a), SPATIAL KEY (b)); | ||
|  | 
 | ||
|  | INSERT INTO t1 (b) VALUES (GeomFromText('POINT(1 2)')); | ||
|  | INSERT INTO t1 (b) SELECT b FROM t1; | ||
|  | INSERT INTO t1 (b) SELECT b FROM t1; | ||
|  | INSERT INTO t1 (b) SELECT b FROM t1; | ||
|  | INSERT INTO t1 (b) SELECT b FROM t1; | ||
|  | INSERT INTO t1 (b) SELECT b FROM t1; | ||
|  | 
 | ||
|  | OPTIMIZE TABLE t1; | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | 
 | ||
|  | # | ||
|  | # Bug #29070: Error in spatial index | ||
|  | # | ||
|  | 
 | ||
|  | CREATE TABLE t1 (a INT, b GEOMETRY NOT NULL, SPATIAL KEY b(b)); | ||
|  | INSERT INTO t1 VALUES (1, GEOMFROMTEXT('LINESTRING(1102218.456 1,2000000 2)')); | ||
|  | INSERT INTO t1 VALUES (2, GEOMFROMTEXT('LINESTRING(1102218.456 1,2000000 2)')); | ||
|  | 
 | ||
|  | # must return the same number as the next select | ||
|  | SELECT COUNT(*) FROM t1 WHERE | ||
|  |   MBRINTERSECTS(b, GEOMFROMTEXT('LINESTRING(1 1,1102219 2)') ); | ||
|  | SELECT COUNT(*) FROM t1 IGNORE INDEX (b) WHERE | ||
|  |   MBRINTERSECTS(b, GEOMFROMTEXT('LINESTRING(1 1,1102219 2)') ); | ||
|  | 
 | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | 
 | ||
|  | --echo # | ||
|  | --echo # Bug #48258: Assertion failed when using a spatial index | ||
|  | --echo # | ||
|  | CREATE TABLE t1(a LINESTRING NOT NULL, SPATIAL KEY(a)); | ||
|  | INSERT INTO t1 VALUES | ||
|  |   (GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)')), | ||
|  |   (GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)')); | ||
|  | EXPLAIN SELECT 1 FROM t1 WHERE a = GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | SELECT 1 FROM t1 WHERE a = GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | EXPLAIN SELECT 1 FROM t1 WHERE a < GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | SELECT 1 FROM t1 WHERE a < GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | EXPLAIN SELECT 1 FROM t1 WHERE a <= GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | SELECT 1 FROM t1 WHERE a <= GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | EXPLAIN SELECT 1 FROM t1 WHERE a > GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | SELECT 1 FROM t1 WHERE a > GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | EXPLAIN SELECT 1 FROM t1 WHERE a >= GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | SELECT 1 FROM t1 WHERE a >= GEOMFROMTEXT('LINESTRING(-1 -1, 1 -1, -1 -1, -1 1, 1 1)'); | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | 
 | ||
|  | --echo # | ||
|  | --echo # Bug #51357: crash when using handler commands on spatial indexes | ||
|  | --echo # | ||
|  | 
 | ||
|  | CREATE TABLE t1(a GEOMETRY NOT NULL,SPATIAL INDEX a(a)); | ||
|  | HANDLER t1 OPEN; | ||
|  | HANDLER t1 READ a FIRST; | ||
|  | HANDLER t1 READ a NEXT; | ||
|  | HANDLER t1 READ a PREV; | ||
|  | HANDLER t1 READ a LAST; | ||
|  | HANDLER t1 CLOSE; | ||
|  | 
 | ||
|  | # second crash fixed when the tree has changed since the last search. | ||
|  | HANDLER t1 OPEN; | ||
|  | HANDLER t1 READ a FIRST; | ||
|  | INSERT INTO t1 VALUES (GeomFromText('Polygon((40 40,60 40,60 60,40 60,40 40))')); | ||
|  | --echo # should not crash | ||
|  | --disable_result_log | ||
|  | HANDLER t1 READ a NEXT; | ||
|  | --enable_result_log | ||
|  | HANDLER t1 CLOSE; | ||
|  | 
 | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | 
 | ||
|  | --echo End of 5.0 tests. | ||
|  | 
 | ||
|  | 
 | ||
|  | --echo # | ||
|  | --echo # Bug #57323/11764487: myisam corruption with insert ignore  | ||
|  | --echo # and invalid spatial data | ||
|  | --echo # | ||
|  | 
 | ||
|  | CREATE TABLE t1(a LINESTRING NOT NULL, b GEOMETRY NOT NULL, | ||
|  |   SPATIAL KEY(a), SPATIAL KEY(b)) ENGINE=MyISAM; | ||
|  | INSERT INTO t1 VALUES(GEOMFROMTEXT("point (0 0)"), GEOMFROMTEXT("point (1 1)")); | ||
|  | --error ER_CANT_CREATE_GEOMETRY_OBJECT | ||
|  | INSERT IGNORE INTO t1 SET a=GEOMFROMTEXT("point (-6 0)"), b=GEOMFROMTEXT("error"); | ||
|  | --error ER_CANT_CREATE_GEOMETRY_OBJECT | ||
|  | INSERT IGNORE INTO t1 SET a=GEOMFROMTEXT("point (-6 0)"), b=NULL; | ||
|  | SELECT ASTEXT(a), ASTEXT(b) FROM t1; | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | CREATE TABLE t1(a INT NOT NULL, b GEOMETRY NOT NULL, | ||
|  |   KEY(a), SPATIAL KEY(b)) ENGINE=MyISAM; | ||
|  | INSERT INTO t1 VALUES(0, GEOMFROMTEXT("point (1 1)")); | ||
|  | --error ER_CANT_CREATE_GEOMETRY_OBJECT | ||
|  | INSERT IGNORE INTO t1 SET a=0, b=GEOMFROMTEXT("error"); | ||
|  | --error ER_CANT_CREATE_GEOMETRY_OBJECT | ||
|  | INSERT IGNORE INTO t1 SET a=1, b=NULL; | ||
|  | SELECT a, ASTEXT(b) FROM t1; | ||
|  | DROP TABLE t1; | ||
|  | 
 | ||
|  | --echo End of 5.1 tests |