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

On 2008-04-19 Sat 22:41 +0800,He Zhenxing wrote:
> 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.

It turns out that the test case has been disabled, so you should ignore
my second comment. Sorry!

But I still think that besides the problem of result order, other
problems of this test case does not seem to be a test case problem, it's
more likely a server 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