Below is the list of changes that have just been committed into a local
6.0 repository of mkindahl. When mkindahl 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, 2008-04-03 15:38:03+02:00, mkindahl@stripped +8 -0
Various fixes to make tests pass.
include/my_handler.h@stripped, 2008-04-03 15:37:54+02:00, mkindahl@stripped +2 -2
Key length change as result of WL#1213 clashes with cleanup of this file
where some constants was moved.
include/myisam.h@stripped, 2008-04-03 15:37:55+02:00, mkindahl@stripped +4 -4
Changing MI_* constants to refer to the the newly created HA_* constants
with the same meaning.
mysql-test/r/binlog_index.result@stripped, 2008-04-03 15:37:55+02:00, mkindahl@stripped +2 -2
Result change.
mysql-test/r/locktrans_innodb.result@stripped, 2008-04-03 15:37:56+02:00, mkindahl@stripped +12 -12
Result change.
mysql-test/r/locktrans_myisam.result@stripped, 2008-04-03 15:37:56+02:00, mkindahl@stripped +19 -19
Result change.
mysql-test/r/order_by.result@stripped, 2008-04-03 15:37:56+02:00, mkindahl@stripped +3 -3
Result change.
mysql-test/r/subselect_mat.result@stripped, 2008-04-03 15:37:57+02:00, mkindahl@stripped +2 -2
Result change.
mysql-test/suite/falcon/r/falcon_bug_22972.result@stripped, 2008-04-03 15:37:57+02:00, mkindahl@stripped +1 -1
Result change.
diff -Nrup a/include/my_handler.h b/include/my_handler.h
--- a/include/my_handler.h 2008-03-28 17:45:02 +01:00
+++ b/include/my_handler.h 2008-04-03 15:37:54 +02:00
@@ -36,10 +36,10 @@ extern "C" {
#define HA_MAX_POSSIBLE_KEY 255 /* For myisamchk */
/*
The following defines can be increased if necessary.
- But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
+ But beware the dependency of HA_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH.
*/
-#define HA_MAX_KEY_LENGTH 1000 /* Max length in bytes */
+#define HA_MAX_KEY_LENGTH 1332 /* Max length in bytes */
#define HA_MAX_KEY_SEG 16 /* Max segments for key */
#define HA_MAX_POSSIBLE_KEY_BUFF (HA_MAX_KEY_LENGTH + 24+ 6+6)
diff -Nrup a/include/myisam.h b/include/myisam.h
--- a/include/myisam.h 2008-04-01 22:33:41 +02:00
+++ b/include/myisam.h 2008-04-03 15:37:55 +02:00
@@ -47,12 +47,12 @@ extern "C" {
The following defines can be increased if necessary.
But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH.
*/
-#define MI_MAX_KEY_LENGTH 1332 /* Max length in bytes */
-#define MI_MAX_KEY_SEG 16 /* Max segments for key */
+#define MI_MAX_KEY_LENGTH HA_MAX_KEY_LENGTH /* Max length in bytes */
+#define MI_MAX_KEY_SEG HA_MAX_KEY_SEG /* Max segments for key */
-#define MI_MAX_POSSIBLE_KEY_BUFF (MI_MAX_KEY_LENGTH + 6 + 6) /* For mi_check */
+#define MI_MAX_POSSIBLE_KEY_BUFF HA_MAX_POSSIBLE_KEY_BUFF /* For mi_check */
-#define MI_MAX_KEY_BUFF (MI_MAX_KEY_LENGTH+MI_MAX_KEY_SEG*6+8+8)
+#define MI_MAX_KEY_BUFF HA_MAX_KEY_BUFF
#define MI_MAX_MSG_BUF 1024 /* used in CHECK TABLE, REPAIR TABLE */
#define MI_NAME_IEXT ".MYI"
#define MI_NAME_DEXT ".MYD"
diff -Nrup a/mysql-test/r/binlog_index.result b/mysql-test/r/binlog_index.result
--- a/mysql-test/r/binlog_index.result 2008-04-01 15:18:55 +02:00
+++ b/mysql-test/r/binlog_index.result 2008-04-03 15:37:55 +02:00
@@ -9,7 +9,7 @@ master-bin.000003 #
master-bin.000004 #
purge binary logs TO 'master-bin.000004';
Warnings:
-Warning 1668 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
+Warning 1669 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
*** must show a list starting from the 'TO' argument of PURGE ***
show binary logs;
Log_name File_size
@@ -20,7 +20,7 @@ flush logs;
flush logs;
*** must be a warning master-bin.000001 was not found ***
Warnings:
-Warning 1668 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
+Warning 1669 Being purged log MYSQLTEST_VARDIR/log/master-bin.000001 was not found
*** must show one record, of the active binlog, left in the index file after PURGE ***
show binary logs;
Log_name File_size
diff -Nrup a/mysql-test/r/locktrans_innodb.result b/mysql-test/r/locktrans_innodb.result
--- a/mysql-test/r/locktrans_innodb.result 2008-02-07 13:21:46 +01:00
+++ b/mysql-test/r/locktrans_innodb.result 2008-04-03 15:37:56 +02:00
@@ -94,12 +94,12 @@ ERROR 42000: You have an error in your S
# Implicit lock method conversion due to mix in statement.
LOCK TABLE t1 READ, t2 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't2'
UNLOCK TABLES;
# Lock t1 share (converted to read), t2 write.
LOCK TABLE t1 IN SHARE MODE, t2 WRITE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't1'
# Show t1 is read locked, t2 write locked.
INSERT INTO t1 SELECT * FROM t2;
ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
@@ -110,8 +110,8 @@ INSERT INTO t2 SELECT * FROM t1;
# Lock t1 exclusive (converted to write), t2 share (converted to read).
LOCK TABLE t1 IN EXCLUSIVE MODE, t2 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't2'
# Show t1 is write locked, t2 read locked.
INSERT INTO t1 SELECT * FROM t2;
INSERT INTO t2 SELECT * FROM t1;
@@ -135,8 +135,8 @@ ERROR HY000: Cannot convert to non-trans
## Error is reported on first table only. Show both errors:
SHOW WARNINGS;
Level Code Message
-Error 1612 Cannot convert to non-transactional lock in strict mode on 't1'
-Error 1612 Cannot convert to non-transactional lock in strict mode on 't2'
+Error 1613 Cannot convert to non-transactional lock in strict mode on 't1'
+Error 1613 Cannot convert to non-transactional lock in strict mode on 't2'
UNLOCK TABLES;
SET @@SQL_MODE= @wl3561_save_sql_mode;
#
@@ -156,7 +156,7 @@ CREATE TABLE t4 (c4 INT) ENGINE= MyISAM;
# Request a transactional lock, which is converted to non-transactional.
LOCK TABLE t4 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't4'
# Try a conflict with the existing non-transactional lock.
INSERT INTO t4 VALUES(444);
ERROR HY000: Table 't4' was locked with a READ lock and can't be updated
@@ -173,8 +173,8 @@ CREATE VIEW v1 AS SELECT * FROM t3, t4 W
# Request a share lock on the view, which is converted to read locks.
LOCK TABLE v1 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't3'
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't3'
+Warning 1612 Converted to non-transactional lock on 't4'
# Show that read locks on the base tables prohibit writing ...
INSERT INTO t3 SELECT * FROM t4;
ERROR HY000: Table 't3' was locked with a READ lock and can't be updated
@@ -190,7 +190,7 @@ COUNT(*)
## Report conversion on view due to existing non-transactional locks.
LOCK TABLE v1 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 'v1'
+Warning 1612 Converted to non-transactional lock on 'v1'
INSERT INTO t3 VALUES(333);
INSERT INTO t4 VALUES(444);
INSERT INTO t1 VALUES(111);
@@ -199,8 +199,8 @@ UNLOCK TABLES;
## Now report conversion on base table again.
LOCK TABLE v1 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't3'
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't3'
+Warning 1612 Converted to non-transactional lock on 't4'
INSERT INTO t3 VALUES(333);
INSERT INTO t4 VALUES(444);
INSERT INTO t1 VALUES(111);
diff -Nrup a/mysql-test/r/locktrans_myisam.result b/mysql-test/r/locktrans_myisam.result
--- a/mysql-test/r/locktrans_myisam.result 2008-02-07 13:21:52 +01:00
+++ b/mysql-test/r/locktrans_myisam.result 2008-04-03 15:37:56 +02:00
@@ -21,8 +21,8 @@ UNLOCK TABLES;
# Valid syntax for transactional locks.
LOCK TABLE t1 IN SHARE MODE, t2 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't2'
UNLOCK TABLES;
#
# Valid syntax for aliases with and without 'AS'.
@@ -30,19 +30,19 @@ LOCK TABLE t1 AS a1 READ, t2 a2 WRITE;
UNLOCK TABLES;
LOCK TABLE t1 AS a1 IN SHARE MODE, t2 a2 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 'a1'
-Warning 1611 Converted to non-transactional lock on 'a2'
+Warning 1612 Converted to non-transactional lock on 'a1'
+Warning 1612 Converted to non-transactional lock on 'a2'
UNLOCK TABLES;
#
# Transactional locks taken on a view.
CREATE VIEW v1 AS SELECT * FROM t1, t2 WHERE t1.c1 = t2.c2;
LOCK TABLE v1 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't2'
LOCK TABLE v1 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 'v1'
+Warning 1612 Converted to non-transactional lock on 'v1'
DROP VIEW v1;
#
# Locking INFORMATION_SCHEMA fails on missing privileges.
@@ -94,12 +94,12 @@ ERROR 42000: You have an error in your S
# Implicit lock method conversion due to mix in statement.
LOCK TABLE t1 READ, t2 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't2'
UNLOCK TABLES;
# Lock t1 share (converted to read), t2 write.
LOCK TABLE t1 IN SHARE MODE, t2 WRITE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't1'
# Show t1 is read locked, t2 write locked.
INSERT INTO t1 SELECT * FROM t2;
ERROR HY000: Table 't1' was locked with a READ lock and can't be updated
@@ -110,8 +110,8 @@ INSERT INTO t2 SELECT * FROM t1;
# Lock t1 exclusive (converted to write), t2 share (converted to read).
LOCK TABLE t1 IN EXCLUSIVE MODE, t2 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't1'
-Warning 1611 Converted to non-transactional lock on 't2'
+Warning 1612 Converted to non-transactional lock on 't1'
+Warning 1612 Converted to non-transactional lock on 't2'
# Show t1 is write locked, t2 read locked.
INSERT INTO t1 SELECT * FROM t2;
INSERT INTO t2 SELECT * FROM t1;
@@ -135,8 +135,8 @@ ERROR HY000: Cannot convert to non-trans
## Error is reported on first table only. Show both errors:
SHOW WARNINGS;
Level Code Message
-Error 1612 Cannot convert to non-transactional lock in strict mode on 't1'
-Error 1612 Cannot convert to non-transactional lock in strict mode on 't2'
+Error 1613 Cannot convert to non-transactional lock in strict mode on 't1'
+Error 1613 Cannot convert to non-transactional lock in strict mode on 't2'
UNLOCK TABLES;
SET @@SQL_MODE= @wl3561_save_sql_mode;
#
@@ -156,7 +156,7 @@ CREATE TABLE t4 (c4 INT) ENGINE= MyISAM;
# Request a transactional lock, which is converted to non-transactional.
LOCK TABLE t4 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't4'
# Try a conflict with the existing non-transactional lock.
INSERT INTO t4 VALUES(444);
ERROR HY000: Table 't4' was locked with a READ lock and can't be updated
@@ -173,8 +173,8 @@ CREATE VIEW v1 AS SELECT * FROM t3, t4 W
# Request a share lock on the view, which is converted to read locks.
LOCK TABLE v1 IN SHARE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't3'
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't3'
+Warning 1612 Converted to non-transactional lock on 't4'
# Show that read locks on the base tables prohibit writing ...
INSERT INTO t3 SELECT * FROM t4;
ERROR HY000: Table 't3' was locked with a READ lock and can't be updated
@@ -190,7 +190,7 @@ COUNT(*)
## Report conversion on view due to existing non-transactional locks.
LOCK TABLE v1 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 'v1'
+Warning 1612 Converted to non-transactional lock on 'v1'
INSERT INTO t3 VALUES(333);
INSERT INTO t4 VALUES(444);
INSERT INTO t1 VALUES(111);
@@ -199,8 +199,8 @@ UNLOCK TABLES;
## Now report conversion on base table again.
LOCK TABLE v1 IN EXCLUSIVE MODE;
Warnings:
-Warning 1611 Converted to non-transactional lock on 't3'
-Warning 1611 Converted to non-transactional lock on 't4'
+Warning 1612 Converted to non-transactional lock on 't3'
+Warning 1612 Converted to non-transactional lock on 't4'
INSERT INTO t3 VALUES(333);
INSERT INTO t4 VALUES(444);
INSERT INTO t1 VALUES(111);
diff -Nrup a/mysql-test/r/order_by.result b/mysql-test/r/order_by.result
--- a/mysql-test/r/order_by.result 2008-04-01 12:56:30 +02:00
+++ b/mysql-test/r/order_by.result 2008-04-03 15:37:56 +02:00
@@ -1438,8 +1438,8 @@ SELECT d FROM t1, t2
WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
ORDER BY t2.c LIMIT 1;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t1 ref a,b b 4 const 4 Using where; Using temporary; Using filesort
-1 SIMPLE t2 ref a,b,c a 40 test.t1.a,const 11 Using where
+1 SIMPLE t1 ref a,b b 4 const 4 Using index condition; Using temporary; Using filesort
+1 SIMPLE t2 ref a,b,c a 40 test.t1.a,const 11 Using index condition
SELECT d FROM t1, t2
WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
ORDER BY t2.c LIMIT 1;
@@ -1450,7 +1450,7 @@ SELECT d FROM t3 AS t1, t2 AS t2
WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
ORDER BY t2.c LIMIT 1;
id select_type table type possible_keys key key_len ref rows Extra
-1 SIMPLE t2 range a,b,c c 5 NULL 420 Using where
+1 SIMPLE t2 range a,b,c c 5 NULL 420 Using where; Using MRR
1 SIMPLE t1 ref a a 39 test.t2.a,const 10 Using where; Using index
SELECT d FROM t3 AS t1, t2 AS t2
WHERE t2.b=14 AND t2.a=t1.a AND 5.1<t2.c AND t1.b='DE'
diff -Nrup a/mysql-test/r/subselect_mat.result b/mysql-test/r/subselect_mat.result
--- a/mysql-test/r/subselect_mat.result 2008-02-14 16:45:49 +01:00
+++ b/mysql-test/r/subselect_mat.result 2008-04-03 15:37:57 +02:00
@@ -209,7 +209,7 @@ id select_type table type possible_keys
1 PRIMARY t1 ALL NULL NULL NULL NULL 3 100.00 Using where
2 SUBQUERY t2 ALL NULL NULL NULL NULL 5 100.00
Warnings:
-Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2` from `test`.`t1` where <in_optimizer>((`test`.`t1`.`a1`,`test`.`t1`.`a2`),(`test`.`t1`.`a1`,`test`.`t1`.`a2`) in ( <materialize> (select `test`.`t2`.`b1` AS `b1`,`test`.`t2`.`b2` AS `b2` from `test`.`t2` ), <primary_index_lookup>(`test`.`t1`.`a1` in <temporary table> on distinct_key)))
+Note 1003 select `test`.`t1`.`a1` AS `a1`,`test`.`t1`.`a2` AS `a2` from `test`.`t1` where <in_optimizer>((`test`.`t1`.`a1`,`test`.`t1`.`a2`),(`test`.`t1`.`a1`,`test`.`t1`.`a2`) in ( <materialize> (select `test`.`t2`.`b1` AS `b1`,`test`.`t2`.`b2` AS `b2` from `test`.`t2` order by `test`.`t2`.`b1`,`test`.`t2`.`b2` ), <primary_index_lookup>(`test`.`t1`.`a1` in <temporary table> on distinct_key)))
select * from t1 where (a1, a2) in (select b1, b2 from t2 order by b1, b2);
a1 a2
1 - 01 2 - 01
@@ -220,7 +220,7 @@ id select_type table type possible_keys
1 PRIMARY t1i index NULL it1i3 18 NULL 3 100.00 Using where; Using index
2 SUBQUERY t2i index NULL it2i3 18 NULL 5 100.00 Using index
Warnings:
-Note 1003 select `test`.`t1i`.`a1` AS `a1`,`test`.`t1i`.`a2` AS `a2` from `test`.`t1i` where <in_optimizer>((`test`.`t1i`.`a1`,`test`.`t1i`.`a2`),(`test`.`t1i`.`a1`,`test`.`t1i`.`a2`) in ( <materialize> (select `test`.`t2i`.`b1` AS `b1`,`test`.`t2i`.`b2` AS `b2` from `test`.`t2i` ), <primary_index_lookup>(`test`.`t1i`.`a1` in <temporary table> on distinct_key)))
+Note 1003 select `test`.`t1i`.`a1` AS `a1`,`test`.`t1i`.`a2` AS `a2` from `test`.`t1i` where <in_optimizer>((`test`.`t1i`.`a1`,`test`.`t1i`.`a2`),(`test`.`t1i`.`a1`,`test`.`t1i`.`a2`) in ( <materialize> (select `test`.`t2i`.`b1` AS `b1`,`test`.`t2i`.`b2` AS `b2` from `test`.`t2i` order by `test`.`t2i`.`b1`,`test`.`t2i`.`b2` ), <primary_index_lookup>(`test`.`t1i`.`a1` in <temporary table> on distinct_key)))
select * from t1i where (a1, a2) in (select b1, b2 from t2i order by b1, b2);
a1 a2
1 - 01 2 - 01
diff -Nrup a/mysql-test/suite/falcon/r/falcon_bug_22972.result b/mysql-test/suite/falcon/r/falcon_bug_22972.result
--- a/mysql-test/suite/falcon/r/falcon_bug_22972.result 2007-12-03 15:22:36 +01:00
+++ b/mysql-test/suite/falcon/r/falcon_bug_22972.result 2008-04-03 15:37:57 +02:00
@@ -5,6 +5,6 @@ DROP TABLE t1;
ERROR 42S02: Unknown table 't1'
SHOW WARNINGS;
Level Code Message
-Error 173 Can't execute the given command because you have active locked tables or an active transaction
+Error 177 Can't execute the given command because you have active locked tables or an active transaction
COMMIT;
DROP TABLE t1;
| Thread |
|---|
| • bk commit into 6.0 tree (mkindahl:1.2624) | Mats Kindahl | 3 Apr |