3681 Ramil Kalimullin 2009-10-22 [merge]
Manual merge.
modified:
mysql-test/r/select.result
mysql-test/t/select.test
sql/sql_select.cc
3680 Tatiana A. Nurnberg 2009-10-20 [merge]
auto-merge
modified:
client/mysqlbinlog.cc
mysql-test/r/grant3.result
mysql-test/r/myisam_crash_before_flush_keys.result
mysql-test/r/sp.result
mysql-test/t/grant3.test
mysql-test/t/myisam_crash_before_flush_keys.test
mysql-test/t/sp.test
sql/sql_acl.cc
sql/sql_yacc.yy
strings/ctype-uca.c
=== modified file 'mysql-test/r/select.result'
--- a/mysql-test/r/select.result 2009-09-28 15:58:30 +0000
+++ b/mysql-test/r/select.result 2009-10-22 10:02:36 +0000
@@ -4373,6 +4373,35 @@ f3 f4 count
1 abc 1
1 def 2
drop table t1, t2, t3;
+#
+# Bug#47019: Assertion failed: 0, file .\rt_mbr.c, line 138 when
+# forcing a spatial index
+#
+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 NATURAL LEFT JOIN t1 AS t2;
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2
+1 SIMPLE t2 ALL a NULL NULL NULL 2 Using where
+SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2;
+1
+1
+1
+1
+1
+EXPLAIN SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2 FORCE INDEX(a);
+id select_type table type possible_keys key key_len ref rows Extra
+1 SIMPLE t1 ALL NULL NULL NULL NULL 2
+1 SIMPLE t2 ALL a NULL NULL NULL 2 Using where
+SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2 FORCE INDEX(a);
+1
+1
+1
+1
+1
+DROP TABLE t1;
End of 5.0 tests
create table t1(a INT, KEY (a));
INSERT INTO t1 VALUES (1),(2),(3),(4),(5);
=== modified file 'mysql-test/t/select.test'
--- a/mysql-test/t/select.test 2009-09-03 12:50:59 +0000
+++ b/mysql-test/t/select.test 2009-10-22 10:02:36 +0000
@@ -3726,6 +3726,23 @@ cr.f4 = cr2.f4
GROUP BY a.f3, cr.f4;
drop table t1, t2, t3;
+
+
+--echo #
+--echo # Bug#47019: Assertion failed: 0, file .\rt_mbr.c, line 138 when
+--echo # forcing 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 NATURAL LEFT JOIN t1 AS t2;
+SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2;
+EXPLAIN SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2 FORCE INDEX(a);
+SELECT 1 FROM t1 NATURAL LEFT JOIN t1 AS t2 FORCE INDEX(a);
+DROP TABLE t1;
+
+
--echo End of 5.0 tests
#
=== modified file 'sql/sql_select.cc'
--- a/sql/sql_select.cc 2009-10-16 13:12:38 +0000
+++ b/sql/sql_select.cc 2009-10-22 10:02:36 +0000
@@ -5317,7 +5317,7 @@ add_key_part(DYNAMIC_ARRAY *keyuse_array
{
if (!(form->keys_in_use_for_query.is_set(key)))
continue;
- if (form->key_info[key].flags & HA_FULLTEXT)
+ if (form->key_info[key].flags & (HA_FULLTEXT | HA_SPATIAL))
continue; // ToDo: ft-keys in non-ft queries. SerG
uint key_parts= (uint) form->key_info[key].key_parts;
Attachment: [text/bzr-bundle] bzr/ramil@mysql.com-20091022100236-xmhjg9otf8aon8mv.bundle
| Thread |
|---|
| • bzr push into mysql-pe branch (ramil:3680 to 3681) | Ramil Kalimullin | 22 Oct |