List:Commits« Previous MessageNext Message »
From:Alfranio Correia Date:March 17 2011 11:52am
Subject:Re: bzr commit into mysql-5.5 branch (alfranio.correia:3373) Bug#11877568
View as plain text  
Hi Luis,

I already did that.
I don't introduce any message without pinging either Jon or Paul.
I think this should become a rule.

Thx Jon.

Cheers.

On 03/17/2011 11:22 AM, Luís Soares wrote:
> Hi Alfranio, Jon,
> 
>    Patch looks good! I would just like to have Jon to review
> the messages (see comments inline).
> 
>    Jon, would you mind having a look at the wording for the
> warning messages below (last three hunks)?
> 
> On 03/16/2011 04:38 PM, Alfranio Correia wrote:
>> #At
> file:///home/acorreia/workspace.oracle/repository.mysql/bzrwork/bug-11761074/mysql-5.5/
> based on revid:serge.kozlov@stripped
>>
>>   3373 Alfranio Correia	2011-03-16
>>        BUG#11877568 - RPL_SEMI_SYNC FAILS IN PB
>>
>>        Currently, rpl_semi_sync is failing in PB due to the warning message:
>>
>>          "Slave SQL: slave SQL thread is being stopped in the middle of "
>>          "applying of a group having updated a non-transaction table; "
>>          "waiting for the group completion ..."
>>
>>        The problem started happening after the fix for BUG#11762407 what was
>>        automatically suppressing some warning messages.
>>
>>        To fix the current issue, we suppress the aforementioned warning message
>>        and exploit the opportunity to make the sentence clearer.
>>
>>      modified:
>>        mysql-test/extra/rpl_tests/rpl_stop_middle_group.test
>>        mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result
>>        mysql-test/suite/rpl/r/rpl_heartbeat_basic.result
>>        mysql-test/suite/rpl/r/rpl_slow_query_log.result
>>        mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result
>>        mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result
>>        mysql-test/suite/rpl/r/rpl_stop_slave.result
>>        mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test
>>        mysql-test/suite/rpl/t/rpl_heartbeat_basic.test
>>        mysql-test/suite/rpl/t/rpl_semi_sync.test
>>        mysql-test/suite/rpl/t/rpl_slow_query_log.test
>>        mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test
>>        mysql-test/suite/rpl/t/rpl_stop_slave.test
>>        sql/slave.cc
>> === modified file 'mysql-test/extra/rpl_tests/rpl_stop_middle_group.test'
>> --- a/mysql-test/extra/rpl_tests/rpl_stop_middle_group.test	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/extra/rpl_tests/rpl_stop_middle_group.test	2011-03-16 16:38:30
> +0000
>> @@ -23,8 +23,8 @@ insert into tm set a=null; # to simulate
>>   commit;
>>
>>   connection slave;
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> -call mtr.add_suppression("Slave SQL.*The slave SQL is stopped, leaving the
> current group of events unfinished with a non-transaction table changed.");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>> +call mtr.add_suppression("Slave SQL.*Slave SQL Thread stopped with incomplete
> event group having non-transactional changes");
>>
>>   # slave will catch the killed status but won't shut down immediately
>>   # only after the whole group has done (commit)
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result'
>> --- a/mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_circular_for_4_hosts.result	2011-03-16 16:38:30
> +0000
>> @@ -5,7 +5,7 @@ include/rpl_init.inc [topology=1->2->3->
>>   CREATE TABLE t1 (a INT NOT NULL AUTO_INCREMENT, b VARCHAR(100), c INT NOT NULL,
> PRIMARY KEY(a)) ENGINE=MyISAM;
>>   CREATE TABLE t2 (a INT NOT NULL AUTO_INCREMENT, b VARCHAR(100), c INT NOT NULL,
> PRIMARY KEY(a)) ENGINE=InnoDB;
>>   include/rpl_sync.inc
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>
>>   *** Testing schema A->B->C->D->A ***
>>
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_heartbeat_basic.result'
>> --- a/mysql-test/suite/rpl/r/rpl_heartbeat_basic.result	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_heartbeat_basic.result	2011-03-16 16:38:30
> +0000
>> @@ -207,7 +207,7 @@ CREATE TABLE t1 (a INT PRIMARY KEY, b VA
>>   INSERT INTO t1 VALUES (1, 'on slave', NULL);
>>   INSERT INTO t1 VALUES (1, 'on master', NULL);
>>   call mtr.add_suppression("Slave SQL.*Duplicate entry .1. for key .PRIMARY.. on
> query.* Error_code: 1062");
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   Heartbeat events are received while sql thread stopped (1 means 'yes'): 1
>>   include/stop_slave.inc
>>   DROP TABLE t1;
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_slow_query_log.result'
>> --- a/mysql-test/suite/rpl/r/rpl_slow_query_log.result	2011-02-24 14:48:35 +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_slow_query_log.result	2011-03-16 16:38:30 +0000
>> @@ -1,7 +1,7 @@
>>   include/master-slave.inc
>>   [connection master]
>>   CALL mtr.add_suppression("Unsafe statement written to the binary log using
> statement format since BINLOG_FORMAT = STATEMENT");
>> -call mtr.add_suppression("Slave SQL: slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table; waiting for the
> group completion");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   include/stop_slave.inc
>>   SET @old_log_output= @@log_output;
>>   SET GLOBAL log_output= 'TABLE';
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result'
>> --- a/mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_stm_start_stop_slave.result	2011-03-16 16:38:30
> +0000
>> @@ -70,6 +70,6 @@ include/start_slave.inc
>>   # Clean up
>>   DROP TABLE t1;
>>   SET @@global.innodb_flush_log_at_trx_commit=
> @old_innodb_flush_log_at_trx_commit;
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   SET @@global.innodb_flush_log_at_trx_commit=
> @old_innodb_flush_log_at_trx_commit;
>>   include/rpl_end.inc
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result'
>> --- a/mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_stm_stop_middle_group.result	2011-03-16 16:38:30
> +0000
>> @@ -11,8 +11,8 @@ insert into tm set a=null;
>>   Warnings:
>>   Note	1592	Unsafe statement written to the binary log using statement format
> since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a
> non-transactional table after accessing a transactional table within the same
> transaction.
>>   commit;
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> -call mtr.add_suppression("Slave SQL.*The slave SQL is stopped, leaving the
> current group of events unfinished with a non-transaction table changed.");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>> +call mtr.add_suppression("Slave SQL.*Slave SQL Thread stopped with incomplete
> event group having non-transactional changes");
>>   include/wait_for_slave_sql_to_stop.inc
>>   SELECT "NO" AS Last_SQL_Error, @check as `true`;
>>   Last_SQL_Error	true
>> @@ -36,9 +36,9 @@ Warnings:
>>   Note	1592	Unsafe statement written to the binary log using statement format
> since BINLOG_FORMAT = STATEMENT. Statement is unsafe because it accesses a
> non-transactional table after accessing a transactional table within the same
> transaction.
>>   commit;
>>   include/wait_for_slave_sql_to_stop.inc
>> -SELECT "Fatal error: ... The slave SQL is stopped, leaving the current group of
> events unfinished with a non-transaction table changed. If the group consists solely of
> Row-based events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT,
> which ignores duplicate key, key not found, and similar errors (see documentation for
> details)." AS Last_SQL_Error, @check as `true`;
>> +SELECT "Fatal error: ... Slave SQL Thread stopped with incomplete event group
> having non-transactional changes. If the group consists solely of row-based events, you
> can try to restart the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate
> key, key not found, and similar errors (see documentation for details)." AS
> Last_SQL_Error, @check as `true`;
>>   Last_SQL_Error	true
>> -Fatal error: ... The slave SQL is stopped, leaving the current group of events
> unfinished with a non-transaction table changed. If the group consists solely of Row-based
> events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT, which ignores
> duplicate key, key not found, and similar errors (see documentation for details).	1
>> +Fatal error: ... Slave SQL Thread stopped with incomplete event group having
> non-transactional changes. If the group consists solely of row-based events, you can try
> to restart the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate key, key
> not found, and similar errors (see documentation for details).	1
>>   select count(*) as one  from tm;
>>   one
>>   1
>> @@ -53,9 +53,9 @@ set @@global.debug="+d,stop_slave_middle
>>   set @@global.debug="+d,incomplete_group_in_relay_log";
>>   update tm as t1, ti as t2 set t1.a=t1.a * 2, t2.a=t2.a * 2;
>>   include/wait_for_slave_sql_to_stop.inc
>> -SELECT "Fatal error: ... The slave SQL is stopped, leaving the current group of
> events unfinished with a non-transaction table changed. If the group consists solely of
> Row-based events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT,
> which ignores duplicate key, key not found, and similar errors (see documentation for
> details)." AS Last_SQL_Error, @check as `true`;
>> +SELECT "Fatal error: ... Slave SQL Thread stopped with incomplete event group
> having non-transactional changes. If the group consists solely of row-based events, you
> can try to restart the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate
> key, key not found, and similar errors (see documentation for details)." AS
> Last_SQL_Error, @check as `true`;
>>   Last_SQL_Error	true
>> -Fatal error: ... The slave SQL is stopped, leaving the current group of events
> unfinished with a non-transaction table changed. If the group consists solely of Row-based
> events, you can try restarting the slave with --slave-exec-mode=IDEMPOTENT, which ignores
> duplicate key, key not found, and similar errors (see documentation for details).	1
>> +Fatal error: ... Slave SQL Thread stopped with incomplete event group having
> non-transactional changes. If the group consists solely of row-based events, you can try
> to restart the slave with --slave-exec-mode=IDEMPOTENT, which ignores duplicate key, key
> not found, and similar errors (see documentation for details).	1
>>   select max(a) as two from tm;
>>   two
>>   2
>>
>> === modified file 'mysql-test/suite/rpl/r/rpl_stop_slave.result'
>> --- a/mysql-test/suite/rpl/r/rpl_stop_slave.result	2011-02-23 11:54:58 +0000
>> +++ b/mysql-test/suite/rpl/r/rpl_stop_slave.result	2011-03-16 16:38:30 +0000
>> @@ -75,7 +75,7 @@ include/wait_for_slave_sql_to_start.inc
>>   # Test end
>>   SET GLOBAL debug= '$debug_save';
>>   include/restart_slave.inc
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   [connection master]
>>   DROP TABLE t1, t2;
>>
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test'
>> --- a/mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_circular_for_4_hosts.test	2011-03-16 16:38:30
> +0000
>> @@ -30,7 +30,7 @@ CREATE TABLE t1 (a INT NOT NULL AUTO_INC
>>   CREATE TABLE t2 (a INT NOT NULL AUTO_INCREMENT, b VARCHAR(100), c INT NOT NULL,
> PRIMARY KEY(a)) ENGINE=InnoDB;
>>   --source include/rpl_sync.inc
>>   --connection server_4
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   --echo
>>
>>   #
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_heartbeat_basic.test'
>> --- a/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test	2011-02-23 11:54:58 +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_heartbeat_basic.test	2011-03-16 16:38:30 +0000
>> @@ -320,7 +320,7 @@ INSERT INTO t1 VALUES (1, 'on slave', NU
>>   INSERT INTO t1 VALUES (1, 'on master', NULL);
>>   --connection slave
>>   call mtr.add_suppression("Slave SQL.*Duplicate entry .1. for key .PRIMARY.. on
> query.* Error_code: 1062");
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   let $slave_errno= ER_DUP_ENTRY
>>   --source include/wait_for_slave_sql_error.inc
>>   let $rcvd_heartbeats_before= query_get_value(SHOW STATUS LIKE
> 'slave_received_heartbeats', Value, 1);
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_semi_sync.test'
>> --- a/mysql-test/suite/rpl/t/rpl_semi_sync.test	2010-12-19 17:15:12 +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_semi_sync.test	2011-03-16 16:38:30 +0000
>> @@ -15,6 +15,7 @@ call mtr.add_suppression("Unsafe stateme
>>   connection slave;
>>   call mtr.add_suppression("Master server does not support semi-sync");
>>   call mtr.add_suppression("Semi-sync slave .* reply");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   enable_query_log;
>>   connection master;
>>
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_slow_query_log.test'
>> --- a/mysql-test/suite/rpl/t/rpl_slow_query_log.test	2011-02-24 14:48:35 +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_slow_query_log.test	2011-03-16 16:38:30 +0000
>> @@ -29,8 +29,7 @@ source include/master-slave.inc;
>>   source include/have_binlog_format_statement.inc;
>>
>>   CALL mtr.add_suppression("Unsafe statement written to the binary log using
> statement format since BINLOG_FORMAT = STATEMENT");
>> -call mtr.add_suppression("Slave SQL: slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table; waiting for the
> group completion");
>> -
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>
>>   # Prepare slave for different long_query_time we need to stop the slave
>>   # and restart it as long_query_time variable is dynamic and, after
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test'
>> --- a/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test	2011-02-23 11:54:58
> +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_stm_start_stop_slave.test	2011-03-16 16:38:30
> +0000
>> @@ -19,7 +19,7 @@ SET @@session.binlog_direct_non_transact
>>   # clean up
>>   --connection slave
>>   SET @@global.innodb_flush_log_at_trx_commit=
> @old_innodb_flush_log_at_trx_commit;
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   --connection master
>>   SET @@global.innodb_flush_log_at_trx_commit=
> @old_innodb_flush_log_at_trx_commit;
>>
>>
>> === modified file 'mysql-test/suite/rpl/t/rpl_stop_slave.test'
>> --- a/mysql-test/suite/rpl/t/rpl_stop_slave.test	2011-02-23 11:54:58 +0000
>> +++ b/mysql-test/suite/rpl/t/rpl_stop_slave.test	2011-03-16 16:38:30 +0000
>> @@ -48,7 +48,7 @@ SET GLOBAL debug= '$debug_save';
>>   source include/restart_slave_sql.inc;
>>
>>   connection slave;
>> -call mtr.add_suppression("Slave SQL.*slave SQL thread is being stopped in the
> middle of applying of a group having updated a non-transaction table");
>> +call mtr.add_suppression("Slave SQL.*Request to stop slave SQL Thread received
> while applying a group that has non-transactional changes; waiting for completion of the
> group");
>>   connection master;
>>
>>   --source include/rpl_connection_master.inc
>>
>> === modified file 'sql/slave.cc'
>> --- a/sql/slave.cc	2011-01-24 03:52:29 +0000
>> +++ b/sql/slave.cc	2011-03-16 16:38:30 +0000
>> @@ -903,18 +903,18 @@ static bool sql_slave_killed(THD* thd, R
>>           &&  rli->is_in_group())
>>       {
>>         char msg_stopped[]=
>> -        "... The slave SQL is stopped, leaving the current group "
>> -        "of events unfinished with a non-transaction table changed. "
>> -        "If the group consists solely of Row-based events, you can try "
>> -        "restarting the slave with --slave-exec-mode=IDEMPOTENT, which "
>> +        "... Slave SQL Thread stopped with incomplete event group "
>> +        "having non-transactional changes. "
> 
> Disclaimer: I am no native speaker... That said:
> 
>    1. Why ditching the "The"?
>    2. "...thread stopped with incomplete event group having...", isn't it more like:
>       "...thread was stopped while handling an event group containing..."
> 
>> +        "If the group consists solely of row-based events, you can try "
>> +        "to restart the slave with --slave-exec-mode=IDEMPOTENT, which "
>>           "ignores duplicate key, key not found, and similar errors (see "
>>           "documentation for details).";
>>
>>         if (rli->abort_slave)
>>         {
>> -        DBUG_PRINT("info", ("Slave SQL thread is being stopped in the middle
> of"
>> -                            " a group having updated a non-trans table, giving"
>> -                            " it some grace period"));
>> +        DBUG_PRINT("info", ("Request to stop slave SQL Thread received while "
>> +                            "applying a group that has non-transactional "
>> +                            "changes; waiting for completion of the group ...
> "));
>>
>>           /*
>>             Slave sql thread shutdown in face of unfinished group modified
>> @@ -938,9 +938,9 @@ static bool sql_slave_killed(THD* thd, R
>>           if (ret == 0)
>>           {
>>             rli->report(WARNING_LEVEL, 0,
>> -                      "slave SQL thread is being stopped in the middle "
>> -                      "of applying of a group having updated a non-transaction
> "
>> -                      "table; waiting for the group completion ... ");
>> +                      "Request to stop slave SQL Thread received while "
>> +                      "applying a group that has non-transactional "
>> +                      "changes; waiting for completion of the group ... ");
> 
> Looks ok to me.
> 
> 
> Regards,
> Luís

Thread
bzr commit into mysql-5.5 branch (alfranio.correia:3373) Bug#11877568Alfranio Correia16 Mar
  • Re: bzr commit into mysql-5.5 branch (alfranio.correia:3373) Bug#11877568Luís Soares17 Mar
    • Re: bzr commit into mysql-5.5 branch (alfranio.correia:3373) Bug#11877568Alfranio Correia17 Mar
      • Re: bzr commit into mysql-5.5 branch (alfranio.correia:3373) Bug#11877568Luís Soares17 Mar