Below is the list of changes that have just been committed into a local
5.1 repository of kgeorge. When kgeorge does a push these changes will
be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2007-08-29 14:46:49+03:00, gkodinov@stripped +2 -0
Bug #30393: Test "group_by" fails with a difference in "row count"
and strategy (explain)
The fix for WL3527 adds tests that test if the index usage hints
combinations don't cause syntax errors.
The EXPLAIN for one of these tests can be affected by the size of the
rowid on the disk (affected by the presence of large file support).
Fixed to avoid the platform dependent test result by removing the
irrelevant columns from the EXPLAIN result.
mysql-test/r/group_by.result@stripped, 2007-08-29 14:46:46+03:00, gkodinov@stripped +1 -1
Bug #30393: ignore columns irrelevant to the test
mysql-test/t/group_by.test@stripped, 2007-08-29 14:46:46+03:00, gkodinov@stripped +5 -0
Bug #30393: ignore columns irrelevant to the test
diff -Nrup a/mysql-test/r/group_by.result b/mysql-test/r/group_by.result
--- a/mysql-test/r/group_by.result 2007-08-28 19:01:26 +03:00
+++ b/mysql-test/r/group_by.result 2007-08-29 14:46:46 +03:00
@@ -1129,7 +1129,7 @@ ERROR 42000: You have an error in your S
EXPLAIN SELECT a FROM t1 USE INDEX FOR JOIN (i2)
USE INDEX FOR GROUP BY (i2) GROUP BY a;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 index NULL i2 9 NULL 144 Using index
+1 SIMPLE t1 # NULL i2 # NULL # #
EXPLAIN SELECT a FROM t1 FORCE INDEX FOR JOIN (i2)
FORCE INDEX FOR GROUP BY (i2) GROUP BY a;
id select_type table type possible_keys key key_len ref rows Extra
diff -Nrup a/mysql-test/t/group_by.test b/mysql-test/t/group_by.test
--- a/mysql-test/t/group_by.test 2007-08-28 19:01:26 +03:00
+++ b/mysql-test/t/group_by.test 2007-08-29 14:46:46 +03:00
@@ -828,6 +828,11 @@ EXPLAIN SELECT a FROM t1 USE INDEX (i2)
EXPLAIN SELECT a FROM t1 FORCE INDEX ();
--error ER_PARSE_ERROR
EXPLAIN SELECT a FROM t1 IGNORE INDEX ();
+# disable the columns irrelevant to this test here. On some systems
+# without support for large files the rowid is shorter and its size affects
+# the cost calculations. This causes the optimizer to choose loose index
+# scan over normal index access.
+--replace_column 4 # 7 # 9 # 10 #
EXPLAIN SELECT a FROM t1 USE INDEX FOR JOIN (i2)
USE INDEX FOR GROUP BY (i2) GROUP BY a;
EXPLAIN SELECT a FROM t1 FORCE INDEX FOR JOIN (i2)
| Thread |
|---|
| • bk commit into 5.1 tree (gkodinov:1.2579) BUG#30393 | kgeorge | 29 Aug |