Commit 5c7ed146 authored by unknown's avatar unknown
Browse files

Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0

into mysql.com:/home/mysql_src/mysql-4.0

parents 7bd91ac0 028a672f
Loading
Loading
Loading
Loading
+18 −3
Original line number Diff line number Diff line
@@ -1081,7 +1081,7 @@ int do_sync_with_master2(const char* p)
  MYSQL_ROW row;
  MYSQL* mysql = &cur_con->mysql;
  char query_buf[FN_REFLEN+128];
  int offset = 0;
  int offset= 0, tries= 0;
  int rpl_parse;

  if (!master_pos.file[0])
@@ -1096,6 +1096,9 @@ int do_sync_with_master2(const char* p)

  sprintf(query_buf, "select master_pos_wait('%s', %ld)", master_pos.file,
	  master_pos.pos + offset);

wait_for_position:

  if (mysql_query(mysql, query_buf))
    die("line %u: failed in %s: %d: %s", start_lineno, query_buf,
	mysql_errno(mysql), mysql_error(mysql));
@@ -1106,8 +1109,20 @@ int do_sync_with_master2(const char* p)
  if (!(row = mysql_fetch_row(res)))
    die("line %u: empty result in %s", start_lineno, query_buf);
  if (!row[0])
  {
    /*
      It may be that the slave SQL thread has not started yet, though START
      SLAVE has been issued ?
    */
    if (tries++ == 3)
    {
      die("line %u: could not sync with master ('%s' returned NULL)", 
          start_lineno, query_buf);
    }
    sleep(1); /* So at most we will wait 3 seconds and make 4 tries */
    mysql_free_result(res);
    goto wait_for_position;
  }
  mysql_free_result(res);
  last_result=0;
  if (rpl_parse)
+0 −1
Original line number Diff line number Diff line
@@ -4,7 +4,6 @@ reset master;
reset slave;
drop table if exists t1,t2,t3,t4,t5,t6,t7,t8,t9;
slave start;
drop table if exists t1;
create table t1 (n int);
reset master;
stop slave;
+0 −1
Original line number Diff line number Diff line
@@ -3,7 +3,6 @@

source include/master-slave.inc;
connection slave;
drop table if exists t1;
create table t1 (n int);
reset master;
# replicate ourselves