Bug #99956 Allow more inclusive language for MASTER-SLAVE
Submitted: 23 Jun 2020 9:17 Modified: 23 Jun 2020 10:23
Reporter: Nick Fortescue Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server Severity:S4 (Feature request)
Version: OS:Any
Assigned to: CPU Architecture:Any

[23 Jun 2020 9:17] Nick Fortescue
Description:
TL;DR Introduce alternatives to the terms "master" and "slave" in SQL and command line flags, as step 1 in removing this language.

Longer:

MySQL uses the language of MASTER-SLAVE for replication. Eg:
https://dev.mysql.com/doc/refman/8.0/en/replication.html
https://dev.mysql.com/doc/refman/5.7/en/replication-setup-slaves.html

Using the terminology of Master and Slave is oppressive, especially when good alternatives exist. A number of organizations, including the IETF are stopping using this terminology. 

For a much better written note on this issue than I could write see: https://tools.ietf.org/id/draft-knodel-terminology-00.html#master-slave

Alternatives:

Primary-secondary
Leader-follower
Active-standby
Primary-replica
Writer-reader
Coordinator-worker
Parent-helper

It will be hard for MySQL to completely replace this language now, as many existing database scripts will use this language for set-up.
However, step 1 is to allow an alternative in all SQL and command-line flags.

This would allow all organizations which which wish to avoid oppressive language to use the alternatives in their codebases. It also gives a clear migration path.

How to repeat:
Look at the MySQL documentation

Suggested fix:
Steps:

1) Introduce alternatives, I'd suggest "leader", "follower" into SQL grammar and command-line flags which currently only only allow MASTER and SLAVE
2) Change all documentation to use the new SQL grammar and flags
3) Mark old usages as deprecated, and emit a warning if they are used.
4) Remove old usages.

Each step has value in its own right, even if the later steps aren't done.
Step 1 allows users which don't want to use this language to choose not to do so.
Step 2 sets an example from Oracle / MySQL
Step 3 gives enhanced safety for step 4, and also causes a discussion about this issue
Step 4 is a strong statement about languge
[23 Jun 2020 9:42] zhai weixiang
duplicate of bug#99806 ??  :) :)
[23 Jun 2020 10:23] Nick Fortescue
Yes, it is a duplicate of https://bugs.mysql.com/bug.php?id=99806
My search skills failed me. Closing as duplicate.