List:Commits« Previous MessageNext Message »
From:Andrei Elkin Date:October 8 2008 2:10pm
Subject:Re: BUG#37763
View as plain text  
Hello, Horst.

I have a note of a general character.  As I see there were two patches
and the 2nd needs the first.  But it'd be very helpful for reviewing
if the next time a patch you commit would include all the changes
since the beginning of the work.

    From: Horst Hunger <horst@stripped>
    Date: September 29 2008 5:43pm
    Subject: bzr commit into mysql-5.1 branch (horst:2668) Bug#37763
    List-Archive: http://lists.mysql.com/commits/54668
    X-Bug: 37763
    Message-Id: <200809291543.m8TFhUpN031466@stripped>

    #At file:///work/bzr/mysql-5.1-rpl/


    2668 Horst Hunger	2008-09-29
    Fix for bug#37763: rpl_init_slave_func randomly produces warnings.
    The sleep has been replaced 

ok

    and other modifications have been done.

Could you please make it more verbose and summorize in few words your
changes, at least the major ones?

Another and more important question is how these modifications address
issues in the description of the bug?
I am wondering because it's not clear if the changes are going to
eliminate the reported problem.

So please let us first discuss this.

The changes itself look okay and I agree with Matthias' comments.

regards,

Andrei


    removed:
    mysql-test/t/rpl_init_slave_func-slave.opt
    modified:
    mysql-test/r/rpl_init_slave_func.result
    mysql-test/t/disabled.def
    mysql-test/t/rpl_init_slave_func.test

    === modified file 'mysql-test/r/rpl_init_slave_func.result'
    --- a/mysql-test/r/rpl_init_slave_func.result	2008-04-10 13:14:28 +0000
    +++ b/mysql-test/r/rpl_init_slave_func.result	2008-09-29 15:43:24 +0000
    @@ -4,44 +4,51 @@ reset master;
    reset slave;
    drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
    start slave;
    -'#--------------------FN_DYNVARS_037_01-------------------------#'
    -SET @@global.init_slave = "SET @a = 10";
    -'connect (con1,localhost,root,,)'
    -'connection con1'
    +connection slave
    +SET @start_max_connections= @@global.max_connections;
    +SET @start_init_slave= @@global.init_slave;
    +SET @@global.init_slave = "SET @@global.max_connections = 500";
    +connection master
    SELECT @@global.init_slave;
    @@global.init_slave
    -SET @a = 10
    -'connection master'
    -'#--------------------FN_DYNVARS_037_02-------------------------#'
    -'check if value in slave opt file is executed'
    -'connection slave'
    -show variables like 'init_slave';
    -Variable_name	Value
    -init_slave	set global max_connections=500
    -show variables like 'max_connections';
    -Variable_name	Value
    -max_connections	500
    -reset master;
    -'check if value in slave opt file doesnt apply to master'
    -'connection master'
    -show variables like 'init_slave';
    -Variable_name	Value
    -init_slave	SET @a = 10
    -show variables like 'max_connections';
    -Variable_name	Value
    -max_connections	151
    -'connection slave'
    -'try creating a temporary variable in init_slave'
    +
    +SELECT @@global.max_connections;
    +@@global.max_connections
    +151
    +connection slave
    +SELECT @@global.init_slave;
    +@@global.init_slave
    +SET @@global.max_connections = 500
    +SELECT @@global.max_connections;
    +@@global.max_connections
    +151
    +STOP SLAVE;
    +RESET MASTER;
    +RESET SLAVE;
    +START SLAVE;
    +SELECT @@global.init_slave;
    +@@global.init_slave
    +SET @@global.max_connections = 500
    +SELECT @@global.max_connections;
    +@@global.max_connections
    +500
    +connection master
    +SELECT @@global.init_slave;
    +@@global.init_slave
    +
    +SELECT @@global.max_connections;
    +@@global.max_connections
    +151
    +connection slave
    SET @@global.init_slave = "SET @a=5";
    -stop slave;
    -reset slave;
    -drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
    -start slave;
    +STOP SLAVE;
    +RESET SLAVE;
    +START SLAVE;
    SHOW VARIABLES LIKE 'init_slave';
    Variable_name	Value
    init_slave	SET @a=5
    SELECT @a;
    @a
    NULL
    -'Bug#35365 SET statement in init_slave not execute if slave is restarted'
    -set global max_connections= default;
    +SET @@global.max_connections= @start_max_connections;
    +SET @@global.init_slave= @start_init_slave;

    === modified file 'mysql-test/t/disabled.def'
    --- a/mysql-test/t/disabled.def	2008-09-10 10:50:39 +0000
    +++ b/mysql-test/t/disabled.def	2008-09-29 15:43:24 +0000
    @@ -18,7 +18,7 @@ delayed_insert_limit_func             : 
    event_scheduler_func                  : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    interactive_timeout_func              : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    query_cache_wlock_invalidate_func     : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    -rpl_init_slave_func                   : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    +#rpl_init_slave_func                   : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    rpl_max_binlog_size_func              : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    slow_query_log_func                   : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions
    sql_low_priority_updates_func         : BUG#37962 2008-07-08 sven *_func tests
containing sleeps/race conditions

    === removed file 'mysql-test/t/rpl_init_slave_func-slave.opt'
    --- a/mysql-test/t/rpl_init_slave_func-slave.opt	2008-04-10 13:14:28 +0000
    +++ b/mysql-test/t/rpl_init_slave_func-slave.opt	1970-01-01 00:00:00 +0000
    @@ -1 +0,0 @@
    ---init-slave="set global max_connections=500"

    === modified file 'mysql-test/t/rpl_init_slave_func.test'
    --- a/mysql-test/t/rpl_init_slave_func.test	2008-07-10 16:09:39 +0000
    +++ b/mysql-test/t/rpl_init_slave_func.test	2008-09-29 15:43:24 +0000
    @@ -10,85 +10,72 @@
    #                                                                             #
    # Creation Date: 2008-03-08                                                   #
    # Author:  Rizwan                                                             #
    +# Modofied: HHunger 2008-09-29 replaced the sleep and improvements.           #
    #                                                                             #
    # Description: Test Cases of Dynamic System Variable init_slave               #
    #              that checks the behavior of this variable                      #
    #                                                                             #
    -# Reference: http://dev.mysql.com/doc/refman/5.1/en/                          #
    -#  server-system-variables.html                                               #
    +# Reference:                                                                  #
    +# http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html         #
    #                                                                             #
    ###############################################################################

    source include/master-slave.inc;
    +--echo connection slave
    +connection slave;
    +SET @start_max_connections= @@global.max_connections;
    +SET @start_init_slave= @@global.init_slave;

    ---echo '#--------------------FN_DYNVARS_037_01-------------------------#'
    -##################################################################
    -# Check if setting init_slave is changed in every new connection # 
    -##################################################################
    -
    -SET @@global.init_slave = "SET @a = 10";
    -
    ---echo 'connect (con1,localhost,root,,)'
    -connect (con1,localhost,root,,);
    ---echo 'connection con1'
    -connection con1;
    -SELECT @@global.init_slave;
    -disconnect con1;
    ---echo 'connection master'
    +# setting of a global value with an effect on the nest slave start
    +SET @@global.init_slave = "SET @@global.max_connections = 500";
    +
    +# changes not yet expected
    +--echo connection master
    connection master;
    +SELECT @@global.init_slave;
    +SELECT @@global.max_connections;

    ---echo '#--------------------FN_DYNVARS_037_02-------------------------#'
    -####################################################
    -# Begin the functionality Testing of init_slave    #
    -####################################################
    -
    -#====================================================
    ---echo 'check if value in slave opt file is executed'
    -#====================================================
    -save_master_pos;
    ---echo 'connection slave'
    +--echo connection slave
    connection slave;
    -sleep 1;
    -show variables like 'init_slave';
    -show variables like 'max_connections';
    -sync_with_master;
    -reset master;
    -
    -#===============================================================
    ---echo 'check if value in slave opt file doesnt apply to master'
    -#===============================================================
    +SELECT @@global.init_slave;
    +SELECT @@global.max_connections;
    +
    +# reset of the server
    +STOP SLAVE;
    +--wait_for_slave_to_stop
    +RESET MASTER;
    +RESET SLAVE;
    +START SLAVE;
    +source include/wait_for_slave_to_start.inc;

    ---echo 'connection master'
    +# changed values now visible
    +SELECT @@global.init_slave;
    +SELECT @@global.max_connections;
    +
    +--echo connection master
    connection master;
    -show variables like 'init_slave';
    -show variables like 'max_connections';
    -save_master_pos;
    ---echo 'connection slave'
    -connection slave;
    -sync_with_master;
    +SELECT @@global.init_slave;
    +SELECT @@global.max_connections;

    -#=======================================================
    ---echo 'try creating a temporary variable in init_slave'
    -#=======================================================
    +--echo connection slave
    +connection slave;

    +# Setting a variable(is local to a session 
    SET @@global.init_slave = "SET @a=5";

    -source include/stop_slave.inc;
    -reset slave;
    -# Clean up old test tables
    ---disable_warnings
    -drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
    ---enable_warnings
    -start slave;
    +STOP SLAVE;
    +--wait_for_slave_to_stop
    +RESET SLAVE;
    +START SLAVE;
    +source include/wait_for_slave_to_start.inc;

    SHOW VARIABLES LIKE 'init_slave';
    +# expect NULL
    SELECT @a;

    ---echo 'Bug#35365 SET statement in init_slave not execute if slave is restarted'
    -
    -# Restore value
    -set global max_connections= default;
    -
    +# Clean up
    +SET @@global.max_connections= @start_max_connections;
    +SET @@global.init_slave= @start_init_slave;
    ##################################################
    # End of functionality Testing for init_slave    #
    ##################################################

Thread
Re: BUG#37763Andrei Elkin8 Oct