From: Serge Kozlov Date: February 4 2011 10:51am Subject: bzr commit into mysql-5.5 branch (Serge.Kozlov:3301) Bug#43828 Bug#59494 List-Archive: http://lists.mysql.com/commits/130388 X-Bug: 43828,59494 Message-Id: <201102041051.p14Ape8R003907@localhost.localdomain> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============0880255433==" --===============0880255433== MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline #At file:///home/ksm/oracle/repo/QA/bugs/build-5.5/ based on revid:dmitry.shulga@stripped 3301 Serge Kozlov 2011-02-04 Bug#43828, Bug#59494. After introducing new way of initialization of replication the setting different heartbeat periods for slaves was missed. Added asserts modified: mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result mysql-test/suite/rpl/t/rpl_heartbeat_2slaves.test === modified file 'mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result' --- a/mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result 2010-12-19 17:15:12 +0000 +++ b/mysql-test/suite/rpl/r/rpl_heartbeat_2slaves.result 2011-02-04 10:51:32 +0000 @@ -2,13 +2,22 @@ include/rpl_init.inc [topology=1->2,1->3 include/rpl_connect.inc [creating master] include/rpl_connect.inc [creating slave_1] include/rpl_connect.inc [creating slave_2] +include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD = 0.1; +include/start_slave.inc +include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD = 1; +include/start_slave.inc Slave has received heartbeat event slave_2 has received heartbeat event -slave_1 has received more heartbeats than slave_2 (1 means 'yes'): 0 +include/assert.inc [slave_1 should have received more heartbeats than slave_2] include/rpl_stop_slaves.inc include/rpl_change_topology.inc [new topology=1->3->2] include/rpl_start_slaves.inc +include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD=0.1; +include/start_slave.inc slave_1 has received heartbeat event [on master] CREATE TABLE t1 (a INT PRIMARY KEY, b VARCHAR(10), c LONGTEXT); @@ -26,7 +35,7 @@ Tables_in_test [on master] creating updates on master and send to slave_2 during 5 second [on slave_1] -slave_1 has received heartbeats (1 means 'yes'): 0 +include/assert.inc [slave_1 should have received heartbeats] *** Clean up *** DROP TABLE t1; === modified file 'mysql-test/suite/rpl/t/rpl_heartbeat_2slaves.test' --- a/mysql-test/suite/rpl/t/rpl_heartbeat_2slaves.test 2010-12-19 17:15:12 +0000 +++ b/mysql-test/suite/rpl/t/rpl_heartbeat_2slaves.test 2011-02-04 10:51:32 +0000 @@ -20,7 +20,19 @@ --source include/rpl_connect.inc # -# Testing heartbeat +# Set different heartbeat periods for slaves +# +--connection slave_1 +--source include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD = 0.1; +--source include/start_slave.inc +--connection slave_2 +--source include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD = 1; +--source include/start_slave.inc + +# +# Testing heartbeat for one master and two slaves # # Check that heartbeat events sent to both slaves with correct periods @@ -39,10 +51,11 @@ let $slave_2_rcvd_heartbeats= query_get_ --echo slave_2 has received heartbeat event --connection slave_1 let $slave_1_rcvd_heartbeats= query_get_value(SHOW STATUS LIKE 'slave_received_heartbeats', Value, 1); -let $result= query_get_value(SELECT ($slave_1_rcvd_heartbeats DIV $slave_2_rcvd_heartbeats) > 1 AS Result, Result, 1); ---echo slave_1 has received more heartbeats than slave_2 (1 means 'yes'): $result ---echo +--let $assert_cond= [slave_1:SHOW STATUS LIKE "slave_received_heartbeats", Value, 1] > [slave_2:SHOW STATUS LIKE "slave_received_heartbeats", Value, 1] +--let $assert_text= slave_1 should have received more heartbeats than slave_2 +--source include/assert.inc +--echo # Create topology master->slave_2->slave_1 and check that slave_1 # receives heartbeat while slave_2 gets data. @@ -54,6 +67,10 @@ let $result= query_get_value(SELECT ($sl --let $rpl_topology= 1->3->2 --source include/rpl_change_topology.inc --source include/rpl_start_slaves.inc +--connection slave_1 +--source include/stop_slave.inc +CHANGE MASTER TO MASTER_HEARTBEAT_PERIOD=0.1; +--source include/start_slave.inc # Check heartbeat for new replication channel slave_2->slave let $status_var= slave_received_heartbeats; @@ -104,8 +121,9 @@ while ($i) { --enable_query_log --connection slave_1 --echo [on slave_1] -let $result= query_get_value(SELECT ($slave_1_rcvd_heartbeats_after - $slave_1_rcvd_heartbeats_before) > 0 AS Result, Result, 1); ---echo slave_1 has received heartbeats (1 means 'yes'): $result +--let $assert_cond= [slave_1:SELECT $slave_1_rcvd_heartbeats_after AS Value, Value, 1] > [slave_2:SELECT $slave_1_rcvd_heartbeats_before AS Value, Value, 1] +--let $assert_text= slave_1 should have received heartbeats +--source include/assert.inc --echo # --===============0880255433== MIME-Version: 1.0 Content-Type: text/bzr-bundle; charset="us-ascii"; name="bzr/serge.kozlov@stripped" Content-Transfer-Encoding: 7bit Content-Disposition: inline # Bazaar merge directive format 2 (Bazaar 0.90) # revision_id: serge.kozlov@stripped # target_branch: file:///home/ksm/oracle/repo/QA/bugs/build-5.5/ # testament_sha1: eea3faded49c45ded81175aadd172baa928e9c20 # timestamp: 2011-02-04 13:51:40 +0300 # base_revision_id: dmitry.shulga@stripped\ # 1ssnkooxtwhu6oa1 # # Begin bundle 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 --===============0880255433==--