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

Rename or alias slave-related statements, options, status variables

    XMLWordPrintable

Details

    • Epic
    • Status: Stalled (View Workflow)
    • Major
    • Resolution: Unresolved
    • None
    • Replication
    • None
    • Rename or alias slave-related statements, options, status variables

    Description

      UPDATE: It appears MySQL uses the terminology "source" (not "primary") and "replica". As we're adding aliases for the established "master"/"slave" terminology, we should at least follow and be compatible with MySQL to minimize confusion and gain some compatibility.

      So already introduced aliases using "primary" need to be changed to "source", and in general any changes done under this MDEV should research the corresponding naming in MySQL, and aliases should be named the same way, to the extent possible.


      A US-based user has asked me whether we can rename or alias slave-related statements, options, status variables. I believe that discussions involving slaves can be uncomfortable for some people due to the history of slavery in the U.S.

      Aliasing can be implemented, as well as new optional command/option names. For example SHOW REPLICA STATUS as alternative to SHOW MASTER STATUS.

      Existing names and output must be preserved if they can be in use by existing user application and scripts, to preserve backwards compatibility.

      Newly added options and commands still need to have a variant following the main traditional terminology for consistency (eg. Master_* options for CHANGE MASTER). New optional commands could change the output naming (eg. output of SHOW REPLICA STATUS) as this does not break backwards compatibility.

      Internal (non-user-facing naming) must not be changed to avoid unnecessary source code changes that complicate merges and reading commit history).

      I have no idea how prevalent this feeling is, but I do know that several other software teams have done similar changes recently. For example:

      https://www.theregister.co.uk/2018/09/11/python_purges_master_and_slave_in_political_pogrom/

      https://www.theregister.co.uk/2018/09/13/redis_master_slave/

      https://github.com/antirez/redis/issues/5335

      https://github.com/kubernetes/website/issues/6525

      https://www.drupal.org/node/2275877 - replica

      If we did want to do this, then some potential replacements are:

      • replica
      • clone
      • replicator
      • standby
      • secondary
      • follower

      Attachments

        Issue Links

          Activity

            People

              serg Sergei Golubchik
              GeoffMontee Geoff Montee (Inactive)
              Votes:
              7 Vote for this issue
              Watchers:
              30 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.