Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-8345

STOP SLAVE should not cause an ERROR to be logged to the error log

Details

    Description

      If you issue a STOP SLAVE on any slave (tested on 10.0.19 and 10.1.5), you will see an "ERROR" logged to the error log:

      mysql> select version();
      +----------------+
      | version()      |
      +----------------+
      | 10.1.5-MariaDB |
      +----------------+
      1 row in set (0.00 sec)
       
      mysql> stop slave;
      Query OK, 0 rows affected (0.10 sec)

      Error log:

      015-06-19 16:39:06 2496 [Note] Error reading relay log event: slave SQL thread was killed
      2015-06-19 16:39:07 3508 [ERROR] Error reading packet from server: Lost connection to MySQL server during query ( server_errno=2013)
      2015-06-19 16:39:07 3508 [Note] Slave I/O thread killed while reading event
      2015-06-19 16:39:07 3508 [Note] Slave I/O thread exiting, read up to log 'chris-laptop-bin.000008', position 120

      The "[Note]"s are fine, but the "[Error]" is not. It then causes monitoring soulutions (MONyog, et al) to then issue alerts.

      The same happens in MySQL, but it is fixed in 5.7.0:

      https://bugs.mysql.com/bug.php?id=61275

      It would be nice if we could fix this for 10.0 and 10.1, however.

      Attachments

        Activity

          So-called "internally filed bug", which Bug #61275 refers to, is in fact Bug #53955 - Error 2013 + "Error reading relay log event" on STOP SLAVE in Windows.

          Here is the commit comment for this bugfix:

          commit 6b24763a834f14e754afca9a259ca6251c4f4b4c 2e8de7fa9dada2d0b881b55a64f3228a2742d7aa
          Author: Manish Kumar <manish.4.kumar@oracle.com>
          Date:   Tue Mar 27 13:10:42 2012 +0530
           
              BUG#12977988 - ON STOP SLAVE: ERROR READING PACKET FROM SERVER: LOST CONNECTION
                             TO MYSQL SERVER
              BUG#11761457 - ERROR 2013 + "ERROR READING RELAY LOG EVENT" ON STOP SLAVE IN WINDOWS
              
              Problem - on STOP SLAVE, the slave reliably produces the record in the error log
              
                        [ERROR] Error reading packet from server: Lost connection to MySQL
                                server during query (server_errno=2013)
              
                        There is not negative effect of this error being logged to the error
                        log file.
              
              Fix - after execution of STOP SLAVE we check for the value of mi->rli->abort_slave.
                    This flag is used to suppress any error or warning messages that we get
                    during execution. So if the flag is set it means we can ignore the error and
                    do not log it in the error log.

          elenst Elena Stepanova added a comment - So-called "internally filed bug", which Bug #61275 refers to, is in fact Bug #53955 - Error 2013 + "Error reading relay log event" on STOP SLAVE in Windows . Here is the commit comment for this bugfix: commit 6b24763a834f14e754afca9a259ca6251c4f4b4c 2e8de7fa9dada2d0b881b55a64f3228a2742d7aa Author: Manish Kumar <manish.4.kumar@oracle.com> Date: Tue Mar 27 13:10:42 2012 +0530   BUG#12977988 - ON STOP SLAVE: ERROR READING PACKET FROM SERVER: LOST CONNECTION TO MYSQL SERVER BUG#11761457 - ERROR 2013 + "ERROR READING RELAY LOG EVENT" ON STOP SLAVE IN WINDOWS Problem - on STOP SLAVE, the slave reliably produces the record in the error log [ERROR] Error reading packet from server: Lost connection to MySQL server during query (server_errno=2013) There is not negative effect of this error being logged to the error log file. Fix - after execution of STOP SLAVE we check for the value of mi->rli->abort_slave. This flag is used to suppress any error or warning messages that we get during execution. So if the flag is set it means we can ignore the error and do not log it in the error log.

          To me (looking at another log) it seams this error pops up before killing the IO thread instead of after killing the SQL thread.

          michaeldg Michaël de groot added a comment - To me (looking at another log) it seams this error pops up before killing the IO thread instead of after killing the SQL thread .

          Did anyone say that it has anything to do with SQL thread? I don't see anything like that here.
          The error happens after the command STOP SLAVE (or STOP SLAVE IO_THREAD) is issued, and yes, it's logged right before the message about this thread being actually killed, which happens upon the STOP command.

          elenst Elena Stepanova added a comment - Did anyone say that it has anything to do with SQL thread? I don't see anything like that here. The error happens after the command STOP SLAVE (or STOP SLAVE IO_THREAD ) is issued, and yes, it's logged right before the message about this thread being actually killed, which happens upon the STOP command.

          People

            serg Sergei Golubchik
            ccalender Chris Calender (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.