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

Slave fails when switched from STATEMENT to MIXED and receives ROW event

    XMLWordPrintable

Details

    Description

      The following is probably an edge case, but it's still a bug. Tracking it in the code may yield a key for other latent problems.

      Servers started with binlog_format=STATEMENT.
      log_slave_updates is enabled.
      Changed SET GLOBAL binlog_format='MIXED' on servers while running.

      Later, we see this error.

      140930 8:51:33 [ERROR] Slave SQL: Error executing row event: 'Cannot execute statement: impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT.', Gtid 0-9-360301963, Int
      ernal MariaDB error code: 1666
      140930 8:51:33 [Warning] Slave: Cannot execute statement: impossible to write to binary log since statement is in row format and BINLOG_FORMAT = STATEMENT. Error_code: 1666

      That of course shouldn't happen, as the binlog format has been changed.
      Only a mysqld restart (with binlog_format=MIXED) resolved this.

      Conclusion: some variable in running server didn't update to MIXED.

      Attachments

        Activity

          People

            greenman Ian Gilfillan
            arjen Arjen Lentz
            Votes:
            0 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.