Quantcast
Viewing all articles
Browse latest Browse all 18769

Odd MySQL fact of the day

The LogEvent class has four methods named read_log_event. This is the base class for binlog events. I might prefer different names. I was extremely confused by servers on which the value of Seconds_Behind_Master rapidly fluctuated between 0 and a large value. This behavior is documented, I just had not read that page recently. Fortunately, the db operations experts explained it to me. So I am adding a few more variables to make it easier to monitor replication including:

  • Counters for the number of binlog events written by the IO thread and run by the SQL thread.
  • Counters for the number of bytes written by the IO thread and run by the SQL thread.
  • A timer for the number of seconds that the SQL thread waits for the IO thread to provide more events.
And if you are curious, these are the read_log_event methods.


One:
  static Log_event* read_log_event(IO_CACHE* file,
                                   pthread_mutex_t* log_lock,
                                   const Format_description_log_event
                                   *description_event);

Two:
  static int read_log_event(IO_CACHE* file, String* packet,
                            pthread_mutex_t* log_lock);

Three:
  static Log_event* read_log_event(IO_CACHE* file,
                                   const Format_description_log_event
                                   *description_event);

Four:
  static Log_event* read_log_event(const char* buf, uint event_len,
                                   const char **error,
                                   const Format_description_log_event
                                   *description_event);

Image may be NSFW.
Clik here to view.

PlanetMySQL Voting: Vote UP / Vote DOWN

Viewing all articles
Browse latest Browse all 18769

Trending Articles