Commit 7450eef8 authored by unknown's avatar unknown
Browse files

Merging 4.1 into 5.0


client/mysqldump.c:
  Auto merged
sql/log_event.cc:
  Removed settings of thd->lex fields since they are not needed in 5.0.
parents 323652f4 5842bccf
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -2561,6 +2561,7 @@ static int do_show_master_status(MYSQL *mysql_con)
    row = mysql_fetch_row(master);
    if (row && row[0] && row[1])
    {
      /* SHOW MASTER STATUS reports file and position */
      if (opt_comments)
        fprintf(md_result_file,
                "\n--\n-- Position to start replication or point-in-time "
@@ -2570,6 +2571,14 @@ static int do_show_master_status(MYSQL *mysql_con)
              comment_prefix, row[0], row[1]); 
      check_io(md_result_file);
    }
    else if (!ignore_errors)
    {
      /* SHOW MASTER STATUS reports nothing and --force is not enabled */
      my_printf_error(0, "Error: Binlogging on server not active", 
		      MYF(0), mysql_error(mysql_con));
      mysql_free_result(master);
      return 1;
    }
    mysql_free_result(master);
  }
  return 0;
+37 −0
Original line number Diff line number Diff line
stop slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
start slave;
CREATE TABLE t4 (
id INT(5) unsigned NOT NULL auto_increment,
name varchar(15) NOT NULL default '',
number varchar(35) NOT NULL default 'default',
PRIMARY KEY  (id),
UNIQUE KEY unique_rec (name,number)
) ENGINE=InnoDB;
LOAD DATA
INFILE '../../std_data/loaddata_pair.dat'  
REPLACE INTO TABLE t4 
(name,number);
SELECT * FROM t4;
id	name	number
1	XXX	12345
2	XXY	12345
SELECT * FROM t4;
id	name	number
1	XXX	12345
2	XXY	12345
LOAD DATA
INFILE '../../std_data/loaddata_pair.dat'  
REPLACE INTO TABLE t4
(name,number);
SELECT * FROM t4;
id	name	number
3	XXX	12345
4	XXY	12345
SELECT * FROM t4;
id	name	number
3	XXX	12345
4	XXY	12345
+2 −0
Original line number Diff line number Diff line
XXX	12345
XXY	12345
+46 −0
Original line number Diff line number Diff line
# File for specialities regarding replication from or to InnoDB
# tables.

source include/master-slave.inc;
source include/have_innodb.inc;

#
# Bug#11401: Load data infile 'REPLACE INTO' fails on slave.
#
connection master;
CREATE TABLE t4 (
  id INT(5) unsigned NOT NULL auto_increment,
  name varchar(15) NOT NULL default '',
  number varchar(35) NOT NULL default 'default',
  PRIMARY KEY  (id),
  UNIQUE KEY unique_rec (name,number)
) ENGINE=InnoDB;

--disable_warnings
LOAD DATA
     INFILE '../../std_data/loaddata_pair.dat'  
     REPLACE INTO TABLE t4 
     (name,number);
--enable_warnings
SELECT * FROM t4;

sync_slave_with_master;
SELECT * FROM t4;

connection master;
--disable_warnings
LOAD DATA
     INFILE '../../std_data/loaddata_pair.dat'  
     REPLACE INTO TABLE t4
     (name,number);
--enable_warnings
SELECT * FROM t4;

sync_slave_with_master;
SELECT * FROM t4;

connection master;
--disable_query_log
DROP TABLE t4;
--enable_query_log
sync_slave_with_master;
+2 −0
Original line number Diff line number Diff line
@@ -2749,7 +2749,9 @@ int Load_log_event::exec_event(NET* net, struct st_relay_log_info* rli,
      thd->query= load_data_query;

      if (sql_ex.opt_flags & REPLACE_FLAG)
      {
	handle_dup= DUP_REPLACE;
      }
      else if (sql_ex.opt_flags & IGNORE_FLAG)
      {
        ignore= 1;