[SERVER-20608] Master Slave terminology is no longer used in day to day conversation. It would be good to replace the related terms used by their alternatives Created: 24/Sep/15  Updated: 06/Dec/22  Resolved: 05/Feb/21

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 4.9.0

Type: Improvement Priority: Major - P3
Reporter: Raunak Jhawar Assignee: Backlog - Replication Team
Resolution: Done Votes: 29
Labels: neweng
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified
Environment:

All environments


Issue Links:
Related
is related to NODE-3057 Start setting readPreference to prima... Closed
Assigned Teams:
Replication
Backwards Compatibility: Fully Compatible
Participants:

 Description   

Rename rs.slaveOK() --> rs.secondaryOK()
Rename rs.slaveDelay property --> rs.secondaryDelay



 Comments   
Comment by Pavithra Vetriselvan [ 05/Feb/21 ]

The Core Server team has spent the last 5 months on the "Remove The Need To Use Master/Slave Terminology" project. This work included, but was not limited to, adding a new "hello" command that will replace the "isMaster" command, renaming/aliasing shell helpers, renaming serverStatus metrics, and renaming slaveDelay to secondaryDelaySecs in a replica set member's config. On upgrade, any slaveDelay field that exists will automatically be renamed to secondaryDelaySecs.

All of these changes will be available in 5.0. Changes that weren't backwards breaking have been backported through 3.6.

We spent a great deal of effort ensuring that users can opt out of this offensive terminology in the next release while also maintaining backwards compatibility for existing applications. Thank you siyuan.zhou, ali.mir, and huayu.ouyang for your work on this project! Special shoutout to ben.caimano, kevin.albertson, and behackett for your collaboration during some true Build Together moments. 

Comment by Steven Vannelli [ 03/Jun/20 ]

Adding this ticket to project PM-1718 since this work is planned for an upcoming release.

For awareness, the goal of that project is to remove and/or alias as much of the exposed master-slave terminology as possible. We will update this ticket once that work has been completed.

Comment by Benjamin Caimano (Inactive) [ 29/Mar/19 ]

I'm bumping this because trivial is honestly a bit irritating to me. If this needs to be split so that we address code changes separately shell+bson changes, so be it.

Comment by Ori Avtalion [ 11/May/18 ]

Is this still under consideration? Would be nice to at least have aliases to the functions, even if the old ones aren't deprecated.

Comment by Raunak Jhawar [ 24/Sep/15 ]

Sure Ramon. Look fwd for your reply.

Comment by Ramon Fernandez Marina [ 24/Sep/15 ]

Thanks for your report raunakjhawar. While it's true that using new names may be more appropriate, such a seemingly small change has a huge potential impact as it may break a large amount of user tools and applications that use the current names.

We'll discuss internally what are the best options going forward and update this ticket as needed.

Thanks,
Ramón.

Generated at Thu Feb 08 03:54:43 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.