List:Commits« Previous MessageNext Message »
From:He Zhenxing Date:March 5 2009 10:35am
Subject:bzr commit into mysql-6.0-bugteam branch (zhenxing.he:3102) Bug#29458
Bug#39526 Bug#40702 Bug#43258
View as plain text  
#At file:///media/sdb2/hezx/work/mysql/bzrwork/b37051/6.0-bugteam/

 3102 He Zhenxing	2009-03-05 [merge]
      Auto merge
added:
  mysql-test/suite/binlog/r/binlog_sql_mode.result
  mysql-test/suite/binlog/t/binlog_sql_mode.test
modified:
  mysql-test/r/skip_name_resolve.result
  mysql-test/suite/backup/r/backup_objects.result
  mysql-test/suite/funcs_1/r/myisam_views.result
  mysql-test/t/ddl_i18n_koi8r.test
  mysql-test/t/ddl_i18n_utf8.test
  mysql-test/t/drop.test
  mysql-test/t/skip_name_resolve.test
  sql/sp.cc
  sql/sql_table.cc

=== modified file 'mysql-test/r/skip_name_resolve.result'
--- a/mysql-test/r/skip_name_resolve.result	2006-07-04 16:44:35 +0000
+++ b/mysql-test/r/skip_name_resolve.result	2009-03-04 12:33:56 +0000
@@ -9,6 +9,3 @@ select user();
 user()
 #
 show processlist;
-Id	User	Host	db	Command	Time	State	Info
-<id>	root	<host>	test	<command>	<time>	<state>	<info>
-<id>	root	<host>	test	<command>	<time>	<state>	<info>

=== modified file 'mysql-test/suite/backup/r/backup_objects.result'
--- a/mysql-test/suite/backup/r/backup_objects.result	2009-01-28 11:08:55 +0000
+++ b/mysql-test/suite/backup/r/backup_objects.result	2009-03-04 10:35:42 +0000
@@ -222,7 +222,7 @@ character_set_client	latin2
 collation_connection	latin1_swedish_ci
 SHOW CREATE VIEW db2.v21;;
 View	v21
-Create View	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `db2`.`v21` AS select `x`.`b` AS `b`,`db2`.`f21`(`y`.`a`) AS `a` from (`db1`.`v11` `x` join `db2`.`v22` `y`) where (`x`.`a` = `y`.`b`)
+Create View	CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `v21` AS select `x`.`b` AS `b`,`db2`.`f21`(`y`.`a`) AS `a` from (`db1`.`v11` `x` join `db2`.`v22` `y`) where (`x`.`a` = `y`.`b`)
 character_set_client	latin2
 collation_connection	latin1_swedish_ci
 SHOW CREATE PROCEDURE db1.p11;;

=== added file 'mysql-test/suite/binlog/r/binlog_sql_mode.result'
--- a/mysql-test/suite/binlog/r/binlog_sql_mode.result	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/binlog/r/binlog_sql_mode.result	2009-02-28 01:35:18 +0000
@@ -0,0 +1,46 @@
+stop slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+reset master;
+reset slave;
+drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
+start slave;
+SET @old_sql_mode=  @@global.sql_mode;
+SET @old_binlog_format=@@session.binlog_format;
+SET SESSION sql_mode=8;
+Initialization 
+RESET MASTER;
+CREATE TABLE t1 (id INT);
+CREATE PROCEDURE testProc() SELECT * FROM t1;
+CREATE VIEW testView as SELECT * from t1;
+CREATE FUNCTION testFunc()
+RETURNS INT
+BEGIN
+return 1;
+END;|
+CREATE TRIGGER testTrig BEFORE INSERT ON t1
+FOR EACH ROW BEGIN
+UPDATE t1 SET id = id +1;
+END;|
+CREATE EVENT testEvent ON SCHEDULE
+EVERY 1 DAY
+DO
+BEGIN
+UPDATE t1 SET id = id +1;
+END;|
+Chceck Result
+select
+(@a:=load_file("MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog"))
+is not null;
+(@a:=load_file("MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog"))
+is not null
+1
+*** String sql_mode=0 is found: 0 ***
+Clean Up
+DROP PROCEDURE testProc;
+DROP FUNCTION testFunc;
+DROP TRIGGER testTrig;
+DROP EVENT testEvent;
+DROP VIEW testView;
+DROP TABLE t1;
+SET @@global.sql_mode= @old_sql_mode;
+SET @@session.binlog_format=@old_binlog_format;

=== added file 'mysql-test/suite/binlog/t/binlog_sql_mode.test'
--- a/mysql-test/suite/binlog/t/binlog_sql_mode.test	1970-01-01 00:00:00 +0000
+++ b/mysql-test/suite/binlog/t/binlog_sql_mode.test	2009-02-28 01:35:18 +0000
@@ -0,0 +1,76 @@
+# ==== Purpose ====
+#
+# Test that sql_mode can correct restore before generating the binlog event
+#    when creating CREATEable objects.
+#
+# ==== Method ====
+#
+# Scan binlog file to check if the sql_mode is still set to 0 before generating binlog event
+#
+
+-- source include/master-slave.inc
+-- source include/have_log_bin.inc
+
+# BUG#39526 sql_mode not retained in binary log for CREATE PROCEDURE
+
+SET @old_sql_mode=  @@global.sql_mode;
+SET @old_binlog_format=@@session.binlog_format;
+let $MYSQLD_DATADIR= `select @@datadir`;
+SET SESSION sql_mode=8;
+
+--echo Initialization 
+
+RESET MASTER;
+CREATE TABLE t1 (id INT);
+
+CREATE PROCEDURE testProc() SELECT * FROM t1;
+CREATE VIEW testView as SELECT * from t1;
+
+DELIMITER |;
+CREATE FUNCTION testFunc()
+  RETURNS INT
+  BEGIN
+    return 1;
+  END;|
+DELIMITER ;|
+
+DELIMITER |;
+CREATE TRIGGER testTrig BEFORE INSERT ON t1
+  FOR EACH ROW BEGIN
+    UPDATE t1 SET id = id +1;
+  END;|
+DELIMITER ;|
+
+DELIMITER |;
+CREATE EVENT testEvent ON SCHEDULE
+  EVERY 1 DAY
+  DO
+    BEGIN
+      UPDATE t1 SET id = id +1;
+    END;|
+DELIMITER ;|
+
+--echo Chceck Result
+
+let $MYSQLD_DATADIR= `select @@datadir`;
+--exec $MYSQL_BINLOG $MYSQLD_DATADIR/master-bin.000001 > $MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog
+--replace_result $MYSQLTEST_VARDIR MYSQLTEST_VARDIR
+eval select
+(@a:=load_file("$MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog"))
+is not null;
+let $s_mode_unsigned= `select @a like "%@@session.sql_mode=0%" /* must return 0 */`;
+echo *** String sql_mode=0 is found: $s_mode_unsigned ***;
+
+--remove_file $MYSQLTEST_VARDIR/tmp/mysqlbinlog_bug39526.binlog
+
+--echo Clean Up
+
+DROP PROCEDURE testProc;
+DROP FUNCTION testFunc;
+DROP TRIGGER testTrig;
+DROP EVENT testEvent;
+DROP VIEW testView;
+DROP TABLE t1;
+
+SET @@global.sql_mode= @old_sql_mode;
+SET @@session.binlog_format=@old_binlog_format;

=== modified file 'mysql-test/suite/funcs_1/r/myisam_views.result'
--- a/mysql-test/suite/funcs_1/r/myisam_views.result	2009-02-14 16:10:30 +0000
+++ b/mysql-test/suite/funcs_1/r/myisam_views.result	2009-03-04 12:22:13 +0000
@@ -23044,7 +23044,7 @@ ERROR 42S02: Table 'test.v1' doesn't exi
 CHECK TABLE v1;
 Table	Op	Msg_type	Msg_text
 test.v1	check	Error	Table 'test.v1' doesn't exist
-test.v1	check	error	Corrupt
+test.v1	check	status	Operation failed
 DESCRIBE v1;
 ERROR 42S02: Table 'test.v1' doesn't exist
 EXPLAIN SELECT * FROM v1;

=== modified file 'mysql-test/t/ddl_i18n_koi8r.test'
--- a/mysql-test/t/ddl_i18n_koi8r.test	2008-02-22 10:30:33 +0000
+++ b/mysql-test/t/ddl_i18n_koi8r.test	2009-03-04 12:45:49 +0000
@@ -143,10 +143,12 @@ set names koi8r|
 
 #  - Dump mysqltest1;
 
+--let $views_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.views.mysqltest1.sql
+
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_koi8r.views.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.views.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --databases mysqltest1 > $views_dump1
 
 #   - Clean mysqltest1;
 
@@ -161,7 +163,9 @@ DROP DATABASE mysqltest1|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.views.mysqltest1.sql
+--exec $MYSQL test < $views_dump1
+
+--remove_file $views_dump1
 
 #
 # Third-round checks.
@@ -398,6 +402,9 @@ set names koi8r|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $sp_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest1.sql
+--let $sp_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -406,7 +413,7 @@ set names koi8r|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_koi8r.sp.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest1 > $sp_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -416,7 +423,7 @@ set names koi8r|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_koi8r.sp.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest2 > $sp_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -432,10 +439,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest1.sql
+--exec $MYSQL test < $sp_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.sp.mysqltest2.sql
+--exec $MYSQL test < $sp_dump2
+
+--remove_file $sp_dump1
+--remove_file $sp_dump2
 
 #
 # Third-round checks.
@@ -669,6 +679,9 @@ use mysqltest1|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $triggers_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest1.sql
+--let $triggers_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -677,7 +690,7 @@ use mysqltest1|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_koi8r.triggers.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest1 > $triggers_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -687,7 +700,7 @@ use mysqltest1|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_koi8r.triggers.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest2 > $triggers_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -703,10 +716,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest1.sql
+--exec $MYSQL test < $triggers_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.triggers.mysqltest2.sql
+--exec $MYSQL test < $triggers_dump2
+
+--remove_file $triggers_dump1
+--remove_file $triggers_dump2
 
 #
 # Third-round checks.
@@ -924,6 +940,9 @@ set names koi8r|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $events_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest1.sql
+--let $events_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -932,7 +951,7 @@ set names koi8r|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_koi8r.events.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest1 > $events_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -942,7 +961,7 @@ set names koi8r|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_koi8r.events.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest2 > $events_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -958,10 +977,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest1.sql
+--exec $MYSQL test < $events_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_koi8r.events.mysqltest2.sql
+--exec $MYSQL test < $events_dump2
+
+--remove_file $events_dump1
+--remove_file $events_dump2
 
 #
 # Third-round checks.

=== modified file 'mysql-test/t/ddl_i18n_utf8.test'
--- a/mysql-test/t/ddl_i18n_utf8.test	2008-02-22 10:30:33 +0000
+++ b/mysql-test/t/ddl_i18n_utf8.test	2009-03-04 12:45:49 +0000
@@ -143,10 +143,12 @@ set names utf8|
 
 #  - Dump mysqltest1;
 
+--let $views_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8views.mysqltest1.sql
+
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_utf8views.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8views.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --databases mysqltest1 > $views_dump1
 
 #   - Clean mysqltest1;
 
@@ -161,7 +163,9 @@ DROP DATABASE mysqltest1|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8views.mysqltest1.sql
+--exec $MYSQL test < $views_dump1
+
+--remove_file $views_dump1
 
 #
 # Third-round checks.
@@ -398,6 +402,9 @@ set names utf8|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $sp_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest1.sql
+--let $sp_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -406,7 +413,7 @@ set names utf8|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_utf8sp.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest1 > $sp_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -416,7 +423,7 @@ set names utf8|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_utf8sp.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --routines --databases mysqltest2 > $sp_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -432,10 +439,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest1.sql
+--exec $MYSQL test < $sp_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8sp.mysqltest2.sql
+--exec $MYSQL test < $sp_dump2
+
+--remove_file $sp_dump1
+--remove_file $sp_dump2
 
 #
 # Third-round checks.
@@ -669,6 +679,9 @@ use mysqltest1|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $triggers_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest1.sql
+--let $triggers_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -677,7 +690,7 @@ use mysqltest1|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_utf8triggers.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest1 > $triggers_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -687,7 +700,7 @@ use mysqltest1|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_utf8triggers.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --triggers --databases mysqltest2 > $triggers_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -703,10 +716,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest1.sql
+--exec $MYSQL test < $triggers_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8triggers.mysqltest2.sql
+--exec $MYSQL test < $triggers_dump2
+
+--remove_file $triggers_dump1
+--remove_file $triggers_dump2
 
 #
 # Third-round checks.
@@ -924,6 +940,9 @@ set names utf8|
 
 #  - Dump mysqltest1, mysqltest2;
 
+--let $events_dump1 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest1.sql
+--let $events_dump2 = $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest2.sql
+
 --echo
 --echo ---> Dump of mysqltest1
 
@@ -932,7 +951,7 @@ set names utf8|
 --echo
 --echo ---> Dumping mysqltest1 to ddl_i18n_utf8events.mysqltest1.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest1 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest1.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest1 > $events_dump1
 
 --echo
 --echo ---> Dump of mysqltest2
@@ -942,7 +961,7 @@ set names utf8|
 --echo
 --echo ---> Dumping mysqltest2 to ddl_i18n_utf8events.mysqltest2.sql
 
---exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest2 > $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest2.sql
+--exec $MYSQL_DUMP --character-sets-dir=$CHARSETSDIR --compact --events --databases mysqltest2 > $events_dump2
 
 #   - Clean mysqltest1, mysqltest2;
 
@@ -958,10 +977,13 @@ DROP DATABASE mysqltest2|
 --echo
 
 --echo ---> Restoring mysqltest1...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest1.sql
+--exec $MYSQL test < $events_dump1
 
 --echo ---> Restoring mysqltest2...
---exec $MYSQL test < $MYSQLTEST_VARDIR/tmp/ddl_i18n_utf8events.mysqltest2.sql
+--exec $MYSQL test < $events_dump2
+
+--remove_file $events_dump1
+--remove_file $events_dump2
 
 #
 # Third-round checks.

=== modified file 'mysql-test/t/drop.test'
--- a/mysql-test/t/drop.test	2008-12-24 10:48:24 +0000
+++ b/mysql-test/t/drop.test	2009-03-04 13:48:55 +0000
@@ -198,17 +198,30 @@ DROP DATABASE IF EXISTS mysql_test;
 CREATE DATABASE mysql_test;
 
 let $MYSQLD_DATADIR= `select @@datadir`;
---copy_file $MYSQLD_DATADIR/mysql/proc.frm $MYSQLTEST_VARDIR/tmp/bug29958.proc.frm
---copy_file $MYSQLD_DATADIR/mysql/proc.MYD $MYSQLTEST_VARDIR/tmp/bug29958.proc.MYD
---copy_file $MYSQLD_DATADIR/mysql/proc.MYI $MYSQLTEST_VARDIR/tmp/bug29958.proc.MYI
+
+--let $proc_frm = $MYSQLD_DATADIR/mysql/proc.frm
+--let $proc_MYD = $MYSQLD_DATADIR/mysql/proc.MYD
+--let $proc_MYI = $MYSQLD_DATADIR/mysql/proc.MYI
+
+--let $copy_of_proc_frm = $MYSQLTEST_VARDIR/tmp/bug29958.copy.frm
+--let $copy_of_proc_MYD = $MYSQLTEST_VARDIR/tmp/bug29958.copy.MYD
+--let $copy_of_proc_MYI = $MYSQLTEST_VARDIR/tmp/bug29958.copy.MYI
+
+--copy_file $proc_frm $copy_of_proc_frm
+--copy_file $proc_MYD $copy_of_proc_MYD
+--copy_file $proc_MYI $copy_of_proc_MYI
 
 DROP TABLE mysql.proc;
 
 DROP DATABASE mysql_test;
 
---copy_file $MYSQLTEST_VARDIR/tmp/bug29958.proc.frm $MYSQLD_DATADIR/mysql/proc.frm
---copy_file $MYSQLTEST_VARDIR/tmp/bug29958.proc.MYD $MYSQLD_DATADIR/mysql/proc.MYD
---copy_file $MYSQLTEST_VARDIR/tmp/bug29958.proc.MYI $MYSQLD_DATADIR/mysql/proc.MYI
+--copy_file $copy_of_proc_frm $proc_frm
+--copy_file $copy_of_proc_MYD $proc_MYD
+--copy_file $copy_of_proc_MYI $proc_MYI
+
+--remove_file $copy_of_proc_frm
+--remove_file $copy_of_proc_MYD
+--remove_file $copy_of_proc_MYI
 
 --echo
 --echo # --

=== modified file 'mysql-test/t/skip_name_resolve.test'
--- a/mysql-test/t/skip_name_resolve.test	2005-12-18 17:11:19 +0000
+++ b/mysql-test/t/skip_name_resolve.test	2009-03-04 12:33:56 +0000
@@ -15,6 +15,9 @@ DROP USER mysqltest_1@'127.0.0.1/255.255
 connect (con1, 127.0.0.1, root, , test, $MASTER_MYPORT, );
 --replace_column 1 #
 select user();
---replace_column 1 <id> 3 <host> 5 <command> 6 <time> 7 <state> 8 <info>
+# We are only interested in the fact that statement below doesn't
+# crash server.
+--disable_result_log
 show processlist;
+--enable_result_log
 connection default;

=== modified file 'sql/sp.cc'
--- a/sql/sp.cc	2009-01-27 02:08:48 +0000
+++ b/sql/sp.cc	2009-03-04 12:22:13 +0000
@@ -936,10 +936,12 @@ sp_create_routine(THD *thd, int type, sp
         ret= SP_INTERNAL_ERROR;
         goto done;
       }
-
+      /* restore sql_mode when binloging */
+      thd->variables.sql_mode= saved_mode;
       /* Such a statement can always go directly to binlog, no trans cache */
       thd->binlog_query(THD::MYSQL_QUERY_TYPE,
                         log_query.c_ptr(), log_query.length(), FALSE, FALSE);
+      thd->variables.sql_mode= 0;
     }
 
   }

=== modified file 'sql/sql_table.cc'
--- a/sql/sql_table.cc	2009-02-27 15:52:30 +0000
+++ b/sql/sql_table.cc	2009-03-05 08:51:30 +0000
@@ -4365,7 +4365,8 @@ static bool mysql_admin_table(THD* thd, 
         push_warning(thd, MYSQL_ERROR::WARN_LEVEL_WARN,
                      ER_VIEW_CHECKSUM, ER(ER_VIEW_CHECKSUM));
       if (thd->stmt_da->is_error() && 
-          thd->stmt_da->sql_errno() == ER_NO_SUCH_TABLE)
+          (thd->stmt_da->sql_errno() == ER_NO_SUCH_TABLE ||
+           thd->stmt_da->sql_errno() == ER_FILE_NOT_FOUND))
         /* A missing table is just issued as a failed command */
         result_code= HA_ADMIN_FAILED;
       else

Thread
bzr commit into mysql-6.0-bugteam branch (zhenxing.he:3102) Bug#29458Bug#39526 Bug#40702 Bug#43258He Zhenxing5 Mar