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

MyRocks port: do we need manual update of slave_gtid_info?

    XMLWordPrintable

Details

    • Task
    • Status: Open (View Workflow)
    • Major
    • Resolution: Unresolved
    • None
    • None
    • None

    Description

      Upstream MyRocks has this patch:

      commit 0f402cb8381ba9d8e71c93085a22e5a12589b6e3
      Author: Santosh Praneeth Banda <santoshb@fb.com>
      Date:   Thu Nov 5 13:54:45 2015 -0800
       
          Improve singled thread replication performance
          
          Summary:
          On slave we update the slave_gtid_info table through MySQL. Delegate this
          to storage engine which is more efficient. SQL threads updates the row information
          in THD structure. Storag engines (InnoDB and Rocksdb) uses this information and
          updates the slave_gtid_info table during prepare phase.
      

      For the user, the server has a global @@slave_gtid_info variable. Possible values are ON, OFF, OPTIMIZED. OPTIMIZED only works for MyRocks and means that the storage engine takes care of maintaining the mysql.slave_gtid_info table.

      ha_rocksdb.cc has code that manually updates slave_gtid_info to reflect the binlog position.

      MariaDB's equivalent of slave_gtid_info is called gtid_slave_pos.

      MariaDB currently doesn't have the SQL part of this feature. We could port it, but

      • it may be hard to put something like this into MariaDB 10.2
      • this does not seem like a priority task?

      See also: MDEV-12179, per-engine gtid_slave_pos. It is only in MariaDB-10.3, though.

      Attachments

        Issue Links

          Activity

            People

              psergei Sergei Petrunia
              psergei Sergei Petrunia
              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.