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

mariadb-binlog GTID --start/stop-position ignoring Server ID

    XMLWordPrintable

Details

    • Unexpected results
    • Fix mariadb-binlog GTID --start/stop-position not checking Server IDs, only Domain IDs and Sequence Numbers

    Description

      mariadb-binlog --start-position=0-9-2 --stop-position=0-9-4 can start after 0-1-2 and stop at 0-1-4.
      This is incorrect, especially in a --skip-gtid-strict-mode environment:

      Sequence numbers can be assumed to be increasing within a single (domain_id, server_id) pair, but not between different server_id.

      So if the binlog contains:

      0-1-10 0-1-11 0-2-10 0-2-11 0-2-12 0-3-11 0-3-12

      Then a starting position of 0-2-10 must start with the GTID 0-2-11, not 0-1-11.
      Likewise, a stop postion of 0-3-11 must stop at 0-3-11, not 0-1-11 or 0-2-11.

      knielsen, https://jira.mariadb.org/browse/MDEV-34614?focusedCommentId=308450#comment-308450

      In contrast, if using a GTID with a nonexistent Server ID,

      • Replication runs until the end for START REPLICA UNTIL master_gtid_pos=...;
      • The IO thread fatal errors with "[...] GTID [x-y-z], which is not in the master's binlog. ..." for CHANGE MASTER TO master_use_gtid=... (start GTID).

      Attachments

        Issue Links

          Activity

            People

              ParadoxV5 Jimmy Hú
              ParadoxV5 Jimmy Hú
              Kristian Nielsen Kristian Nielsen
              Jimmy Hú Jimmy Hú
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:

                Git Integration

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