List:Commits« Previous MessageNext Message »
From:He Zhenxing Date:April 19 2008 2:41pm
Subject:Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673
View as plain text  
Hi Serge

Thank you for your work!

First, I don't think add SET FOREIGN_KEY_CHECKS on slave can help the
issue because the test case uses RBR, and even if using SBR, the master
will correctly recording the value of FOREIGN_KEY_CHECKS for the
statement in the events. So SET FOREIGN_KEY_CHECKS on slave is not
necessary. Add ORDER BY might be helpful. 

Second, I checked several recent pushbuild results of mysql-6.0, and did
not find any failure of this test case, so I think maybe this problem
has already been fixed. I would suggest you to do a more complete check
to see if this test case still fails in the recent pushbuild, if you can
find any, check the logs and try to figure out the problem with that, if
not, I think this is more likely a server problem, and has already been
fixed, so you can just add a comment and close this bug.

On 2008-04-04 Fri 01:05 +0400,Serge Kozlov wrote:
> Below is the list of changes that have just been committed into a local
> 6.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-04 01:05:25+04:00, skozlov@stripped +3 -0
>   Bug#32673.
>   1. Added ORDER BY for all SELECT.
>   2. Set FOREIGN_KEY_CHECKS variable on slave to avoid issues with FK updates.
> 
>   mysql-test/extra/rpl_tests/rpl_row_sp002.test@stripped, 2008-04-04 01:05:19+04:00,
> skozlov@stripped +19 -16
>     updated test case
> 
>   mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result@stripped, 2008-04-04 01:05:19+04:00,
> skozlov@stripped +17 -16
>     updated result file
> 
>   mysql-test/suite/rpl/t/disabled.def@stripped, 2008-04-04 01:05:19+04:00,
> skozlov@stripped +0 -1
>     updated disabled.def
> 
> diff -Nrup a/mysql-test/extra/rpl_tests/rpl_row_sp002.test
> b/mysql-test/extra/rpl_tests/rpl_row_sp002.test
> --- a/mysql-test/extra/rpl_tests/rpl_row_sp002.test	2007-03-29 22:31:01 +04:00
> +++ b/mysql-test/extra/rpl_tests/rpl_row_sp002.test	2008-04-04 01:05:19 +04:00
> @@ -56,6 +56,9 @@ delimiter ;|
>  let $message=< -- test 1 call p1 -- >;
>  --source include/show_msg.inc
>  SET FOREIGN_KEY_CHECKS=1;
> +--connection slave
> +SET FOREIGN_KEY_CHECKS=1;
> +--connection master
>  call test.p1('texas');
>  call test.p1('Live');
>  call test.p1('next');
> @@ -66,31 +69,31 @@ call test.p1('MySQL');
>  let $message=< -- test 1 select master after p1 -- >;
>  --source include/show_msg.inc
>  
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 1 select slave after p1 -- >;
>  --source include/show_msg.inc
>  save_master_pos;
>  connection slave;
>  sync_with_master;
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 1 call p2 & select master -- >;
>  --source include/show_msg.inc
>  connection master;
>  call test.p2(4);
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 1 select slave after p2 -- >;
>  --source include/show_msg.inc
>  save_master_pos;
>  connection slave;
>  sync_with_master;
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  connection master;
>  #show binlog events;
> @@ -131,16 +134,16 @@ CALL test.p1(6,'MySQL');
>  
>  let $message=< -- test 2 select Master after p1 -- >;
>  --source include/show_msg.inc
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 2 select Slave after p1 -- >;
>  --source include/show_msg.inc
>  save_master_pos;
>  connection slave;
>  sync_with_master;
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 2 call p2 & select Master -- >;
>  --source include/show_msg.inc
> @@ -148,16 +151,16 @@ connection master;
>  CALL test.p2(2);
>  CALL test.p2(4);
>  CALL test.p2(6);
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  let $message=< -- test 1 select Slave after p2 -- >;
>  --source include/show_msg.inc
>  save_master_pos;
>  connection slave;
>  sync_with_master;
> -SELECT * FROM test.t1;
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t1 ORDER BY a;
> +SELECT * FROM test.t2 ORDER BY a;
>  
>  connection master;
>  #show binlog events;
> diff -Nrup a/mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result
> b/mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result
> --- a/mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result	2007-06-27 16:27:30 +04:00
> +++ b/mysql-test/suite/rpl/r/rpl_row_sp002_innodb.result	2008-04-04 01:05:19 +04:00
> @@ -25,6 +25,7 @@ end|
>  < -- test 1 call p1 -- >
>  ------------------------
>  SET FOREIGN_KEY_CHECKS=1;
> +SET FOREIGN_KEY_CHECKS=1;
>  call test.p1('texas');
>  call test.p1('Live');
>  call test.p1('next');
> @@ -34,7 +35,7 @@ call test.p1('MySQL');
>  
>  < -- test 1 select master after p1 -- >
>  ---------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  2	Live
> @@ -42,7 +43,7 @@ a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	1
>  2	2
> @@ -53,7 +54,7 @@ a	f
>  
>  < -- test 1 select slave after p1 -- >
>  --------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  2	Live
> @@ -61,7 +62,7 @@ a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	1
>  2	2
> @@ -73,12 +74,12 @@ a	f
>  < -- test 1 call p2 & select master -- >
>  ----------------------------------------
>  call test.p2(4);
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  4	4
>  5	5
> @@ -86,12 +87,12 @@ a	f
>  
>  < -- test 1 select slave after p2 -- >
>  --------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  4	4
>  5	5
> @@ -125,7 +126,7 @@ CALL test.p1(6,'MySQL');
>  
>  < -- test 2 select Master after p1 -- >
>  ---------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  2	Live
> @@ -133,7 +134,7 @@ a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	6
>  2	6
> @@ -144,7 +145,7 @@ a	f
>  
>  < -- test 2 select Slave after p1 -- >
>  --------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  2	Live
> @@ -152,7 +153,7 @@ a	t
>  4	to
>  5	OK
>  6	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	6
>  2	6
> @@ -166,7 +167,7 @@ a	f
>  CALL test.p2(2);
>  CALL test.p2(4);
>  CALL test.p2(6);
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  3	next
> @@ -174,7 +175,7 @@ a	t
>  20	Live
>  40	to
>  60	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	6
>  3	6
> @@ -185,7 +186,7 @@ a	f
>  
>  < -- test 1 select Slave after p2 -- >
>  --------------------------------------
> -SELECT * FROM test.t1;
> +SELECT * FROM test.t1 ORDER BY a;
>  a	t
>  1	texas
>  3	next
> @@ -193,7 +194,7 @@ a	t
>  20	Live
>  40	to
>  60	MySQL
> -SELECT * FROM test.t2;
> +SELECT * FROM test.t2 ORDER BY a;
>  a	f
>  1	6
>  3	6
> 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-03-30 11:17:06 +04:00
> +++ b/mysql-test/suite/rpl/t/disabled.def	2008-04-04 01:05:19 +04:00
> @@ -23,7 +23,6 @@ rpl_extraColmaster_innodb  : BUG#30854 :
>  rpl_extraColmaster_myisam  : BUG#30854
>  rpl_view                   : Bug#32654: rpl_view.test fails randomly
>  rpl_ndb_multi              : Bug#30751: rpl_ndb_multi missing row in output
> -rpl_row_sp002_innodb       : Bug#32673 rpl_row_sp002_innodb.test fails randomly
>  rpl_ssl                    : Bug#32217 rpl_ssl fails with different number of
> records on master and slave
>  rpl_row_until              : Bug#28772 rpl_row_until fails in pushbuild
>  rpl_log_pos                : Bug#8693 Test 'rpl_log_pos' fails sometimes


Thread
bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Serge Kozlov3 Apr
  • Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673He Zhenxing19 Apr
    • Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673He Zhenxing21 Apr
    • Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Serge Kozlov21 Apr
Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Serge Kozlov3 Apr
  • Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Ingo Strüwing4 Apr
    • Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Serge Kozlov4 Apr
Re: bk commit into 6.0 tree (skozlov:1.2626) BUG#32673Serge Kozlov4 Apr