Mats Kindahl wrote:
> Hi Serge!
>
> Patch looks fine, but could you please add waits for the slave to
> stop/start when issuing the start slave and stop slave commands?\
ok, sure. thanks for review
>
> Just my few cents,
> Mats Kindahl
>
> Serge Kozlov wrote:
>> Below is the list of changes that have just been committed into a local
>> 5.0 repository of skozlov. When skozlov 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 02:00:21+04:00, skozlov@stripped +4 -0
>> Bug#32653. Added --log-slave-updates because test requires it. The
>> events based on LOAD DATA INFILE masked by --replace_regex instead
>> restarting of slave
>>
>> mysql-test/r/rpl_log.result@stripped, 2008-04-03 02:00:17+04:00,
>> skozlov@stripped +7 -8
>> updated result file
>>
>> mysql-test/t/disabled.def@stripped, 2008-04-03 02:00:17+04:00,
>> skozlov@stripped +0 -1
>> updated disabled.def
>>
>> mysql-test/t/rpl_log-slave.opt@stripped, 2008-04-03 02:00:17+04:00,
>> skozlov@stripped +1 -1
>> updated option for slave
>>
>> mysql-test/t/rpl_log.test@stripped, 2008-04-03 02:00:17+04:00,
>> skozlov@stripped +4 -11
>> updated test
>>
>> diff -Nrup a/mysql-test/r/rpl_log.result b/mysql-test/r/rpl_log.result
>> --- a/mysql-test/r/rpl_log.result 2006-10-19 13:34:53 +04:00
>> +++ b/mysql-test/r/rpl_log.result 2008-04-03 02:00:17 +04:00
>> @@ -7,7 +7,7 @@ start slave;
>> stop slave;
>> reset master;
>> reset slave;
>> -reset master;
>> +start slave;
>> create table t1(n int not null auto_increment primary key);
>> insert into t1 values (NULL);
>> drop table t1;
>> @@ -25,8 +25,8 @@ master-bin.000001 219 Intvar 1 247 INSER
>> master-bin.000001 247 Query 1 338 use `test`; insert
>> into t1 values (NULL)
>> master-bin.000001 338 Query 1 414 use `test`; drop
>> table t1
>> master-bin.000001 414 Query 1 517 use `test`; create
>> table t1 (word char(20) not null)
>> -master-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=1;block_len=581
>> -master-bin.000001 1121 Execute_load_query 1 1269 use
>> `test`; load data infile '../std_data_ln/words.dat' into table t1
>> ignore 1 lines ;file_id=1
>> +master-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=#;block_len=#
>> +master-bin.000001 1121 Execute_load_query 1 1269 use
>> `test`; load data infile 'words.dat' into table t1 ignore 1 lines
>> ;file_id=#
>> master-bin.000001 1269 Query 1 1345 use `test`; drop
>> table t1
>> show binlog events from 98 limit 1;
>> Log_name Pos Event_type Server_id End_log_pos Info
>> @@ -41,7 +41,6 @@ master-bin.000001 247 Query 1 338 use `t
>> flush logs;
>> create table t5 (a int);
>> drop table t5;
>> -start slave;
>> flush logs;
>> stop slave;
>> create table t1 (n int);
>> @@ -55,8 +54,8 @@ master-bin.000001 219 Intvar 1 247 INSER
>> master-bin.000001 247 Query 1 338 use `test`; insert
>> into t1 values (NULL)
>> master-bin.000001 338 Query 1 414 use `test`; drop
>> table t1
>> master-bin.000001 414 Query 1 517 use `test`; create
>> table t1 (word char(20) not null)
>> -master-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=1;block_len=581
>> -master-bin.000001 1121 Execute_load_query 1 1269 use
>> `test`; load data infile '../std_data_ln/words.dat' into table t1
>> ignore 1 lines ;file_id=1
>> +master-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=#;block_len=#
>> +master-bin.000001 1121 Execute_load_query 1 1269 use
>> `test`; load data infile 'words.dat' into table t1 ignore 1 lines
>> ;file_id=#
>> master-bin.000001 1269 Query 1 1345 use `test`; drop
>> table t1
>> master-bin.000001 1345 Rotate 1 1389
>> master-bin.000002;pos=4
>> show binlog events in 'master-bin.000002';
>> @@ -84,8 +83,8 @@ slave-bin.000001 219 Intvar 1 247 INSERT
>> slave-bin.000001 247 Query 1 338 use `test`; insert
>> into t1 values (NULL)
>> slave-bin.000001 338 Query 1 414 use `test`; drop
>> table t1
>> slave-bin.000001 414 Query 1 517 use `test`; create
>> table t1 (word char(20) not null)
>> -slave-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=1;block_len=581
>> -slave-bin.000001 1121 Execute_load_query 1 1271 use
>> `test`; load data INFILE '../tmp/SQL_LOAD-2-1-1.data' INTO table t1
>> ignore 1 lines ;file_id=1
>> +slave-bin.000001 517 Begin_load_query 1 1121
>> ;file_id=#;block_len=#
>> +slave-bin.000001 1121 Execute_load_query 1 1271 use
>> `test`; load data INFILE 'words.dat' INTO table t1 ignore 1 lines
>> ;file_id=#
>> slave-bin.000001 1271 Query 1 1347 use `test`; drop
>> table t1
>> slave-bin.000001 1347 Query 1 1433 use `test`; create
>> table t5 (a int)
>> slave-bin.000001 1433 Query 1 1509 use `test`; drop
>> table t5
>> diff -Nrup a/mysql-test/t/disabled.def b/mysql-test/t/disabled.def
>> --- a/mysql-test/t/disabled.def 2007-11-28 11:48:04 +03:00
>> +++ b/mysql-test/t/disabled.def 2008-04-03 02:00:17 +04:00
>> @@ -17,7 +17,6 @@ im_options_set : Bug#20294: Instan
>> im_options_unset : Bug#20294: Instance manager tests fail randomly
>> im_utils : Bug#20294: Instance manager tests fail randomly
>> grant_cache : Bug#32651: grant_cache.test fails
>> -rpl_log : Bug#32653: rpl_log.test fails randomly
>> rpl_view : Bug#32654: rpl_view.test fails randomly
>> ndb_backup_print : Bug#32357: ndb_backup_print test fails
>> sometimes in pushbuild
>> rpl_log_pos : Bug#8693 Test 'rpl_log_pos' fails sometimes
>> diff -Nrup a/mysql-test/t/rpl_log-slave.opt
>> b/mysql-test/t/rpl_log-slave.opt
>> --- a/mysql-test/t/rpl_log-slave.opt 2005-09-15 18:17:19 +04:00
>> +++ b/mysql-test/t/rpl_log-slave.opt 2008-04-03 02:00:17 +04:00
>> @@ -1 +1 @@
>> -
>> +--log-slave-updates
>> diff -Nrup a/mysql-test/t/rpl_log.test b/mysql-test/t/rpl_log.test
>> --- a/mysql-test/t/rpl_log.test 2006-10-19 13:34:32 +04:00
>> +++ b/mysql-test/t/rpl_log.test 2008-04-03 02:00:17 +04:00
>> @@ -15,20 +15,11 @@ sync_with_master;
>> stop slave;
>>
>
> This is not something you did, but could you add a wait for slave to
> stop? Otherwise, we might get an error when resetting the slave if the
> machine is loaded.
>
>> reset master;
>> reset slave;
>> -# We are going to read the slave's binlog which contains file_id (for
>> some LOAD
>> -# DATA INFILE); to make it repeatable (not influenced by other
>> tests), we need
>> -# to stop and start the slave, to be sure file_id will start from 1.
>> -# This can be done with 'server_stop slave', but
>> -# this would require the manager, so most of the time the test will
>> be skipped
>> -# :(
>> -# To workaround this, I (Guilhem) add a (empty) rpl_log-slave.opt
>> (because when
>> -# mysql-test-run finds such a file it restarts the slave before doing
>> the
>> -# test). That's not very elegant but I could find no better way, sorry.
>> +start slave;
>>
>
> Missing a wait for slave to start.
>
>>
>> let $VERSION=`select version()`;
>>
>> connection master;
>> -reset master;
>> create table t1(n int not null auto_increment primary key);
>> insert into t1 values (NULL);
>> drop table t1;
>> @@ -37,6 +28,7 @@ load data infile '../std_data_ln/words.d
>> select count(*) from t1;
>> drop table t1;
>> --replace_result $VERSION VERSION
>> +--replace_regex /file_id=[0-9]+/file_id=#/
>> /block_len=[0-9]+/block_len=#/ /infile '.+'/infile 'words.dat'/
>> show binlog events;
>> show binlog events from 98 limit 1;
>> show binlog events from 98 limit 2;
>> @@ -69,7 +61,6 @@ connection slave;
>> # Note that the above 'slave start' will cause a 3rd rotate event (a
>> fake one)
>> # to go into the relay log (the master always sends a fake one when
>> replication
>> # starts). -start slave;
>> sync_with_master;
>> flush logs;
>> stop slave;
>> @@ -81,6 +72,7 @@ create table t1 (n int);
>> insert into t1 values (1);
>> drop table t1;
>> --replace_result $VERSION VERSION
>> +--replace_regex /file_id=[0-9]+/file_id=#/
>> /block_len=[0-9]+/block_len=#/ /infile '.+'/infile 'words.dat'/
>> show binlog events;
>> --replace_result $VERSION VERSION
>> show binlog events in 'master-bin.000002';
>> @@ -91,6 +83,7 @@ start slave;
>> sync_with_master;
>> show binary logs;
>> --replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION
>> +--replace_regex /file_id=[0-9]+/file_id=#/
>> /block_len=[0-9]+/block_len=#/ /INFILE '.+'/INFILE 'words.dat'/
>> show binlog events in 'slave-bin.000001' from 4;
>> --replace_result $MASTER_MYPORT MASTER_PORT $VERSION VERSION
>> show binlog events in 'slave-bin.000002' from 4;
>>
>>
>
>
--
Serge Kozlov, QA Developer
MySQL AB, Moscow, Russia, www.mysql.com
Office:
Are you MySQL certified? www.mysql.com/certification