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

report slave progress to the master

    XMLWordPrintable

Details

    • (Reminder: Slaves acknowledge what they _received_, not what they have fully _applied_ (MDEV-37604).)
    • Q4/2026 Replic. Development

    Description

      When using the semi-sync protocol, track each replica's progress. The SHOW REPLICA HOSTS output should be extended with two fields: one representing the GTID state last sent to the replica, and the other representing the GTID state last ACK'd from the replica.

      When running SHOW REPLICA HOSTS instead of 4 columns

      SHOW REPLICA HOSTS;
      Server_id	Host	Port	Master_id
      

      we want to have additional columns

      Server_id  Host       Port    Master_id   Gtid_State_Sent   Gtid_State_Ack
      3          127.0.0.1  16002   1           0-1-5,1-2-10      0-1-4,1-2-7
      4          127.0.0.1  16003   1           0-1-5,1-2-10      0-1-2,1-2-3
      

      Additional notes:

      • Replicas with semi-sync disabled should have blank values for Gtid_State_Ack.
      • Updating a replica's Gtid_State_Ack should be done by the ack thread after validating that the transaction was sent to the replica.
      • The new columns should always be present, regardless of rpl_semi_sync_master_enabled, as it could still be useful to display the information even in async replication (MDEV-37116, or when fallen back from semi-sync dynamically).
      • The design must distinguish replicas between active async, asyncly catching up for semi-sync, and active semi-sync.
        • It does not need to distinguish “semi-sync has fallen back to async”, because this status is common to all connections and is shown in the status variable Rpl_semi_sync_master_status.

      Attachments

        Issue Links

          Activity

            People

              ParadoxV5 Jimmy Hú
              anel Anel Husakovic
              Jimmy Hú Jimmy Hú
              Votes:
              1 Vote for this issue
              Watchers:
              14 Start watching this issue

              Dates

                Created:
                Updated:

                Time Tracking

                  Estimated:
                  Original Estimate - 5d Original Estimate - 5d
                  5d
                  Remaining:
                  Time Spent - 27d 2h 50m Remaining Estimate - 1d
                  1d
                  Logged:
                  Time Spent - 27d 2h 50m Remaining Estimate - 1d
                  27d 2h 50m

                  Git Integration

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