From 20901edafba09c0ef2236411b40eac06a85d2030 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 10 Aug 2003 05:14:16 +0300 Subject: Remove wrong bug fix when calling create_sort_index. Fix possible replication bug with LOAD DATA ... IGNORE LINES # mysql-test/r/rpl_log.result: Test of load data ... ignore # lines mysql-test/t/rpl_log.test: Test of load data ... ignore # lines sql/log_event.cc: Fix replication bug with LOAD DATA ... IGNORE LINES # (Note that the code that is probably not executed in 4.0) sql/sql_parse.cc: Indentation fix sql/sql_select.cc: Remove wrong bug fix (all tests passes) sql/sql_yacc.yy: Indentation cleanup --- mysql-test/t/rpl_log.test | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'mysql-test/t/rpl_log.test') diff --git a/mysql-test/t/rpl_log.test b/mysql-test/t/rpl_log.test index 8cd9d21a087..ad962b585a1 100644 --- a/mysql-test/t/rpl_log.test +++ b/mysql-test/t/rpl_log.test @@ -13,7 +13,8 @@ create table t1(n int not null auto_increment primary key); insert into t1 values (NULL); drop table t1; create table t1 (word char(20) not null); -load data infile '../../std_data/words.dat' into table t1; +load data infile '../../std_data/words.dat' into table t1 ignore 1 lines; +select count(*) from t1; drop table t1; --replace_result $VERSION VERSION show binlog events; @@ -35,8 +36,8 @@ flush logs; # So, depending on a few milliseconds, we end up with 2 rotate events in the # relay log or one, which influences the output of SHOW SLAVE STATUS, making # it not predictable and causing random test failures. -# To make it predictable, we do a useless update now, but which has the interest -# of making the slave catch both rotate events. +# To make it predictable, we do a useless update now, but which has the +# interest of making the slave catch both rotate events. create table t5 (a int); drop table t5; -- cgit v1.2.1 From eb1fb90006fe4daa09d7d1ac5bb39a282a2427a5 Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 21 Aug 2003 00:23:39 +0200 Subject: Result updates after Dmitri's and my changes to logging with --log-slave-updates. Since my changes, rpl_log.test, whose result file depends on file_id, became non-repeatable, i.e. file_id on slave in SHOW BINLOG EVENTS changed depending on the order of tests (sometimes 1, sometimes 5). Which is logical: as now the slave does not copy Create_file and Exec_load from the relay log (i.e from the master's binlog) to the slave's binlog, but instead lets mysql_load() do the logging, the file_id is now the one whic was used on the slave. Before it was the one which was used on the master, and by chance the master was always restarted for this test because there's a -master.opt file, so file_id on the master is always 1. But now file_id is from the slave so we need to restart the slave. That's why I add an (empty) -slave.opt file. I could have used 'server_stop/start slave', but this would have required the manager, so most of the time mysql-test-run silently skip the test which makes it useless. And I want this test to be run ! mysql-test/r/rpl_loaddata.result: Orig_log_pos is like Pos since Dmitri's good change for BUG#1086 mysql-test/r/rpl_log.result: Orig_log_pos is like Pos now, because Exec_load events are not directly copied by the slave from the relay log to the slave's binary log (these events are written by mysql_load() now). mysql-test/t/rpl_log.test: A comment --- mysql-test/t/rpl_log.test | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'mysql-test/t/rpl_log.test') diff --git a/mysql-test/t/rpl_log.test b/mysql-test/t/rpl_log.test index ad962b585a1..e01b3e4e09c 100644 --- a/mysql-test/t/rpl_log.test +++ b/mysql-test/t/rpl_log.test @@ -5,6 +5,16 @@ connection slave; slave stop; 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. + let $VERSION=`select version()`; connection master; -- cgit v1.2.1