Hi Sven
I am OK with the patch, but I have one suggestion, as you have told me
over the irc, the purpose of the fix of this bug has been changed and is
not consistent with the description of the bug report, so I think it
would be better to mention this in the comment of the patch.
On 2008-05-07 Wed 13:02 +0200,Sven Sandberg wrote:
> Below is the list of changes that have just been committed into a local
> 5.1 repository of sven. When sven 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-05-07 13:02:06+02:00, sven@riska.(none) +2 -0
> BUG#36398: 'DROP TEMPORARY TABLE' in ROLLBACK transaction causes transaction to be
> logged
> Temporarily checking in an incorrect test case. Rationale: the impact of
> this bug is negligible (it's almost a feature request). We need 5.1 to be
> stable, and making a real fix is a bit risky. So the fix is postponed
> to 6.0.
>
> mysql-test/suite/rpl/r/rpl_ddl.result@stripped, 2008-05-07 13:02:05+02:00,
> sven@riska.(none) +32 -20
> Updated result file.
>
> mysql-test/suite/rpl/t/disabled.def@stripped, 2008-05-07 13:02:05+02:00,
> sven@riska.(none) +0 -1
> Enabling test case rpl_ddl.test
>
> diff -Nrup a/mysql-test/suite/rpl/r/rpl_ddl.result
> b/mysql-test/suite/rpl/r/rpl_ddl.result
> --- a/mysql-test/suite/rpl/r/rpl_ddl.result 2007-06-27 14:27:31 +02:00
> +++ b/mysql-test/suite/rpl/r/rpl_ddl.result 2008-05-07 13:02:05 +02:00
> @@ -420,9 +420,9 @@ TEST-INFO: MASTER: The INSERT is not com
> -------- switch to slave --------
> SELECT MAX(f1) FROM t1;
> MAX(f1)
> -5
> +6
>
> -TEST-INFO: SLAVE: The INSERT is not committed (Succeeded)
> +TEST-INFO: SLAVE: The INSERT is committed (Failed)
>
> -------- switch to master -------
> SHOW TABLES LIKE 't23';
> @@ -445,7 +445,7 @@ MAX(f1)
> -------- switch to slave --------
> SELECT MAX(f1) FROM t1;
> MAX(f1)
> -5
> +6
>
> -------- switch to master -------
> RENAME TABLE mysqltest1.t3 to mysqltest1.t20;
> @@ -614,9 +614,9 @@ TEST-INFO: MASTER: The INSERT is not com
> -------- switch to slave --------
> SELECT MAX(f1) FROM t1;
> MAX(f1)
> -8
> +9
>
> -TEST-INFO: SLAVE: The INSERT is not committed (Succeeded)
> +TEST-INFO: SLAVE: The INSERT is committed (Failed)
>
> -------- switch to master -------
>
> @@ -631,7 +631,7 @@ MAX(f1)
> -------- switch to slave --------
> SELECT MAX(f1) FROM t1;
> MAX(f1)
> -8
> +9
>
> -------- switch to master -------
> TRUNCATE TABLE mysqltest1.t7;
> @@ -1086,6 +1086,9 @@ Modified #
> Created #
> Security_type DEFINER
> Comment
> +character_set_client latin1
> +collation_connection latin1_swedish_ci
> +Database Collation latin1_swedish_ci
>
> -------- switch to slave --------
> SHOW PROCEDURE STATUS LIKE 'p1';
> @@ -1097,6 +1100,9 @@ Modified #
> Created #
> Security_type DEFINER
> Comment
> +character_set_client latin1
> +collation_connection latin1_swedish_ci
> +Database Collation latin1_swedish_ci
>
> -------- switch to master -------
>
> @@ -1149,6 +1155,9 @@ Modified #
> Created #
> Security_type DEFINER
> Comment I have been altered
> +character_set_client latin1
> +collation_connection latin1_swedish_ci
> +Database Collation latin1_swedish_ci
>
> -------- switch to slave --------
> SHOW PROCEDURE STATUS LIKE 'p1';
> @@ -1160,6 +1169,9 @@ Modified #
> Created #
> Security_type DEFINER
> Comment I have been altered
> +character_set_client latin1
> +collation_connection latin1_swedish_ci
> +Database Collation latin1_swedish_ci
>
> -------- switch to master -------
>
> @@ -1251,13 +1263,13 @@ TEST-INFO: SLAVE: The INSERT is committ
>
> -------- switch to master -------
> SHOW CREATE VIEW v1;
> -View Create View
> -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1`
> +View Create View character_set_client collation_connection
> +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
>
> -------- switch to slave --------
> SHOW CREATE VIEW v1;
> -View Create View
> -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1`
> +View Create View character_set_client collation_connection
> +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
>
> -------- switch to master -------
>
> @@ -1302,13 +1314,13 @@ TEST-INFO: SLAVE: The INSERT is committ
>
> -------- switch to master -------
> SHOW CREATE VIEW v1;
> -View Create View
> -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1`
> +View Create View character_set_client collation_connection
> +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
>
> -------- switch to slave --------
> SHOW CREATE VIEW v1;
> -View Create View
> -v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1`
> +View Create View character_set_client collation_connection
> +v1 CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW
> `v1` AS select `t1`.`f1` AS `f1` from `t1` latin1 latin1_swedish_ci
>
> -------- switch to master -------
>
> @@ -1402,13 +1414,13 @@ TEST-INFO: SLAVE: The INSERT is committ
>
> -------- switch to master -------
> SHOW TRIGGERS;
> -Trigger Event Table Statement Timing Created sql_mode Definer
> -trg1 INSERT t1 SET @a:=1 BEFORE NULL root@localhost
>
> +Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database
> Collation
> +trg1 INSERT t1 SET
> @a:=1 BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
>
> -------- switch to slave --------
> SHOW TRIGGERS;
> -Trigger Event Table Statement Timing Created sql_mode Definer
> -trg1 INSERT t1 SET @a:=1 BEFORE NULL root@localhost
>
> +Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database
> Collation
> +trg1 INSERT t1 SET
> @a:=1 BEFORE NULL root@localhost latin1 latin1_swedish_ci latin1_swedish_ci
>
> -------- switch to master -------
>
> @@ -1453,11 +1465,11 @@ TEST-INFO: SLAVE: The INSERT is committ
>
> -------- switch to master -------
> SHOW TRIGGERS;
> -Trigger Event Table Statement Timing Created sql_mode Definer
>
> +Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database
> Collation
>
> -------- switch to slave --------
> SHOW TRIGGERS;
> -Trigger Event Table Statement Timing Created sql_mode Definer
>
> +Trigger Event Table Statement Timing Created sql_mode Definer character_set_client collation_connection Database
> Collation
>
> -------- switch to master -------
>
> diff -Nrup a/mysql-test/suite/rpl/t/disabled.def
> b/mysql-test/suite/rpl/t/disabled.def
> --- a/mysql-test/suite/rpl/t/disabled.def 2008-05-07 12:57:06 +02:00
> +++ b/mysql-test/suite/rpl/t/disabled.def 2008-05-07 13:02:05 +02:00
> @@ -10,7 +10,6 @@
> #
> ##############################################################################
>
> -rpl_ddl : BUG#26418 2007-03-01 mleich Slave out of sync after
> CREATE/DROP TEMPORARY TABLE + ROLLBACK on master
> rpl_view : Bug#32654: rpl_view.test fails randomly
> rpl_ndb_multi : Bug#30751: rpl_ndb_multi missing row in output
> rpl_log_pos : Bug#8693 Test 'rpl_log_pos' fails sometimes