Commit 9b79e4d9 authored by mkindahl@dl145h.mysql.com's avatar mkindahl@dl145h.mysql.com
Browse files

Merge dl145h.mysql.com:/data0/mkindahl/mysql-5.1

into  dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl
parents 5746d879 43f06a05
Loading
Loading
Loading
Loading
+0 −8
Original line number Diff line number Diff line
@@ -3870,14 +3870,6 @@ sub mysqld_arguments ($$$$) {
    mtr_add_arg($args, "%s--user=root");
  }

  # When mysqld is run by a root user(euid is 0), it will fail
  # to start unless we specify what user to run as, see BUG#30630
  my $euid= $>;
  if (!$glob_win32 and $euid == 0 and
      (grep(/^--user/, @$extra_opt, @opt_extra_mysqld_opt)) == 0) {
    mtr_add_arg($args, "%s--user=root", $prefix);
  }

  if ( $opt_valgrind_mysqld )
  {
    mtr_add_arg($args, "%s--skip-safemalloc", $prefix);
+4 −1
Original line number Diff line number Diff line
@@ -33,7 +33,10 @@ Relay_log_info::Relay_log_info()
  :Slave_reporting_capability("SQL"),
   no_storage(FALSE), replicate_same_server_id(::replicate_same_server_id),
   info_fd(-1), cur_log_fd(-1), save_temporary_tables(0),
   group_relay_log_pos(0),
   group_relay_log_pos(0), event_relay_log_pos(0),
#if HAVE_purify
   is_fake(FALSE),
#endif
   cur_log_old_open_count(0), group_master_log_pos(0), log_space_total(0),
   ignore_log_space_limit(0), last_master_timestamp(0), slave_skip_counter(0),
   abort_pos_wait(0), slave_run_id(0), sql_thd(0),
+4 −0
Original line number Diff line number Diff line
@@ -154,6 +154,10 @@ class Relay_log_info : public Slave_reporting_capability
  ulonglong event_relay_log_pos;
  ulonglong future_event_relay_log_pos;

#ifdef HAVE_purify
  bool is_fake; /* Mark that this is a fake relay log info structure */
#endif

  /* 
     Original log name and position of the group we're currently executing
     (whose coordinates are group_relay_log_name/pos in the relay log)
+14 −8
Original line number Diff line number Diff line
@@ -1893,6 +1893,10 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
  if (exec_res == 0)
  {
    int error= ev->update_pos(rli);
#ifdef HAVE_purify
    if (!rli->is_fake)
#endif
    {
      char buf[22];
      DBUG_PRINT("info", ("update_pos error = %d", error));
      DBUG_PRINT("info", ("group %s %s",
@@ -1901,6 +1905,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
      DBUG_PRINT("info", ("event %s %s",
                          llstr(rli->event_relay_log_pos, buf),
                          rli->event_relay_log_name));
    }
    /*
      The update should not fail, so print an error message and
      return an error code.
@@ -1910,6 +1915,7 @@ int apply_event_and_update_pos(Log_event* ev, THD* thd, Relay_log_info* rli,
    */
    if (error)
    {
      char buf[22];
      rli->report(ERROR_LEVEL, ER_UNKNOWN_ERROR,
                  "It was not possible to update the positions"
                  " of the relay log information: the slave may"
+3 −0
Original line number Diff line number Diff line
@@ -56,6 +56,9 @@ void mysql_client_binlog_statement(THD* thd)
  if (!thd->rli_fake)
  {
    thd->rli_fake= new Relay_log_info;
#ifdef HAVE_purify
    thd->rli_fake->is_fake= TRUE;
#endif
    have_fd_event= FALSE;
  }
  if (thd->rli_fake && !thd->rli_fake->relay_log.description_event_for_exec)