Details

    • Type: Bug
    • Status: Closed
    • Priority: Minor
    • Resolution: Fixed
    • Affects Version/s: 10.0.10
    • Fix Version/s: 10.0.13
    • Component/s: None
    • Labels:
      None
    • Environment:
      standard Linux, using Debian packages from mariadb

      Description

      Because of a full disk, my master logged a large heap of "LOST" incident messages. I tried to auto-skip them, but that did not work.

      MariaDB [(none)]> show variables like '%slave_skip%';
      +------------------------+-------+
      | Variable_name          | Value |
      +------------------------+-------+
      | slave_skip_errors      | 1590  |
      | sql_slave_skip_counter | 0     |
      +------------------------+-------+
      2 rows in set (0.00 sec)
      MariaDB [(none)]> show slave status\G
                  Slave_SQL_Running: No
                         Last_Errno: 1590
                         Last_Error: The incident LOST_EVENTS occured on the master. Message: error writing to the binary log
      

        Gliffy Diagrams

          Attachments

            Activity

            Hide
            elenst Elena Stepanova added a comment -

            Test case to reproduce it without full disk
            (the binary log is attached, it was produced by MySQL 5.6 which creates LOST_EVENTS upon this scenario):

            On MySQL 5.6, it fails if run in the usual way, and passes if run with --mysqld=--slave-skip-errors=1590. On MariaDB 10.0, it fails either way.

            Put the attached log into mysql-test/std_data.
            Run with --mysqld=--slave-skip-errors=1590

            --source include/master-slave.inc
            
            --connection slave
            STOP SLAVE;
            --source include/wait_for_slave_to_stop.inc
            RESET SLAVE;
            
            --connection master
            RESET MASTER;
            --let $datadir = `SELECT @@datadir`
            --remove_file $datadir/master-bin.000001
            --copy_file $MYSQL_TEST_DIR/std_data/mdev6180-bin.000001 $datadir/master-bin.000001
            --save_master_pos
            
            --connection slave
            START SLAVE;
            --let $slave_timeout = 5
            --source include/wait_for_slave_to_start.inc
            --sync_with_master
            
            Show
            elenst Elena Stepanova added a comment - Test case to reproduce it without full disk (the binary log is attached, it was produced by MySQL 5.6 which creates LOST_EVENTS upon this scenario): On MySQL 5.6, it fails if run in the usual way, and passes if run with --mysqld=--slave-skip-errors=1590 . On MariaDB 10.0, it fails either way. Put the attached log into mysql-test/std_data. Run with --mysqld=--slave-skip-errors=1590 --source include/master-slave.inc --connection slave STOP SLAVE; --source include/wait_for_slave_to_stop.inc RESET SLAVE; --connection master RESET MASTER; --let $datadir = `SELECT @@datadir` --remove_file $datadir/master-bin.000001 --copy_file $MYSQL_TEST_DIR/std_data/mdev6180-bin.000001 $datadir/master-bin.000001 --save_master_pos --connection slave START SLAVE; --let $slave_timeout = 5 --source include/wait_for_slave_to_start.inc --sync_with_master
            Hide
            knielsen Kristian Nielsen added a comment -

            Here is a MySQL 5.6 patch that fixes this:

            revision-id: frazer@mysql.com-20110314170916-ypgin17otj3ucx95
            parent: andrei.elkin@oracle.com-20110314135544-xez4ef4e0rynbmy9
            committer: Frazer Clement <frazer@mysql.com>
            branch nick: mysql-trunk
            timestamp: Mon 2011-03-14 17:09:16 +0000
            message:
            Bug#11799671 NOT POSSIBLE TO SKIP INCIDENT ERRORS

            do_apply_event() for the Incident_log_event is enhanced to check whether
            the event should be skipped.

            Testcase rpl_skip_incident is added.

            Show
            knielsen Kristian Nielsen added a comment - Here is a MySQL 5.6 patch that fixes this: revision-id: frazer@mysql.com-20110314170916-ypgin17otj3ucx95 parent: andrei.elkin@oracle.com-20110314135544-xez4ef4e0rynbmy9 committer: Frazer Clement <frazer@mysql.com> branch nick: mysql-trunk timestamp: Mon 2011-03-14 17:09:16 +0000 message: Bug#11799671 NOT POSSIBLE TO SKIP INCIDENT ERRORS do_apply_event() for the Incident_log_event is enhanced to check whether the event should be skipped. Testcase rpl_skip_incident is added.
            Hide
            knielsen Kristian Nielsen added a comment -

            I merged the MySQL 5.6 fix for Bug#11799671 into MariaDB 10.0.13

            Show
            knielsen Kristian Nielsen added a comment - I merged the MySQL 5.6 fix for Bug#11799671 into MariaDB 10.0.13

              People

              • Assignee:
                knielsen Kristian Nielsen
                Reporter:
                smurf Matthias Urlichs
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: