Commit a52a30e3 authored by anozdrin/alik@quad.'s avatar anozdrin/alik@quad.
Browse files

Patch to eliminate some valgrind warnings in debug printout code.

(originally from Mats)
parent b09af4be
Loading
Loading
Loading
Loading
+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
@@ -1892,6 +1892,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",
@@ -1900,6 +1904,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.
@@ -1909,6 +1914,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)