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

MASTER_GTID_WAIT() works incorrectly in case of out-of-order GTIDs in master binlog

    XMLWordPrintable

Details

    • Bug
    • Status: Closed (View Workflow)
    • Minor
    • Resolution: Won't Fix
    • 10.0.9
    • N/A
    • OTHER
    • None

    Description

      If manual transactions are made on the slave, or in case of multi-master ring
      configured without separate domain ids, two GTIDs with the same sequence
      number and domain id (but distinct server_id) may occur.

      MASTER_GTID_WAIT() does not correctly deal with this situation, as it compares
      only against the sequence number within each domain. This means that it may
      return too early, ie. waiting for the second of two such GTIDs with same
      sequence number will return already when the first of them has been applied on
      the slave.

      This needs to be fixed. The master already sends GTID_LIST events that
      contain the current binlog state, giving the highest sequence number applied
      for each (domain_id, server_id) tuple. The slave should use and maintain this
      binlog state when handling MASTER_GTID_WAIT(), so that the wait is for
      sequence number within the full (domain_id, server_id) tuple, not just the
      domain.

      Attachments

        Activity

          People

            knielsen Kristian Nielsen
            knielsen Kristian Nielsen
            Votes:
            0 Vote for this issue
            Watchers:
            5 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.