Hey Lucas,

I think this is a good time to start working in these changes as work starts on 
5.18.0.

My thoughts:

Pav-1. This is a widely used url, we should take care to transition users. I 
suggest add this new handler and deprecate masterslave. 

Pav-2. IMHO 'leaderfollower’ is incorrect terminology— in this use case, it 
really is just a ‘failover’ behavior and there is no relation to the 
architecture of the target broker(s).

Thanks,
Matt Pavlovich

> On Apr 29, 2022, at 1:08 PM, Tetreault, Lucas <tetlu...@amazon.com.INVALID> 
> wrote:
> 
> Hey folks, 
> 
> TLDR; 
> I am submitting a PR to rename the "masterslave" network connector transport 
> to "leaderfollower" and I propose that we use leader/follower going forward 
> to replace all references to master/slave.
> 
> The Long Version: 
> A tweet from a few days ago [1] raised the issue of non-inclusive terminology 
> in the AWS docs [2] and suggested that we should replace masterslave with a 
> more inclusive name for the network connector transport. The AWS docs refer 
> to a feature of ActiveMQ that is a convenience discovery agent: 
> https://activemq.apache.org/networks-of-brokers#masterslave-discovery. We are 
> planning to change the docs to remove the recommendation to use the 
> masterslave transport. 
> 
> Replacing master/slave nomenclature in ActiveMQ was raised in July 2020 [3]. 
> There was some initial work to rename the git branch from master to main and 
> there have been some attempts at making some changes to the code 
> (https://github.com/apache/activemq/pull/679, 
> https://github.com/apache/activemq/pull/714, 
> https://github.com/apache/activemq/pull/788) however we have not been able to 
> come to an agreement on nomenclature so these efforts seem to have stalled 
> out.
> 
> If we are able to come to an agreement on nomenclature, we can move forward 
> with removing more non-inclusive terminology on the website (I will follow up 
> with some PRs to the website), in discussions with the community and of 
> course in the codebase. This will remove barriers to adoption and make 
> ActiveMQ a more approachable and inclusive project for everyone! Other Apache 
> projects such as Solr and Kafka have moved from master/slave to 
> leader/follower. Leader/follower is also recommended by the IETF [4] and 
> inclusivenaming.org [5] which is supported by companies such as Cisco, Intel, 
> and RedHat. At AWS, we have used active/standby to describe HA deployments, 
> however from previous discussions it's clear that active/standby is not a 
> viable option for this community since 'active' can be used to describe so 
> many things. If we can agree on leader/follower or some alternate we would 
> follow the community's preference and adopt leader/follower to better serve 
> our ActiveMQ users. 
> 
> If we can't come to an agreement on Leader/Follower or some other 
> nomenclature I will, at the very least, create a follow up PR to remove the 
> masterslave transport since it is just a convenience method to use 
> static+failover with ?randomize=false&maxReconnectAttempts=0.
> 
> [1] https://twitter.com/owenblacker/status/1517156221207212032
> [2] 
> https://docs.aws.amazon.com/amazon-mq/latest/developer-guide/amazon-mq-creating-configuring-network-of-brokers.html#creating-configuring-network-of-brokers-configure-network-connectors
>  
> [3] https://issues.apache.org/jira/browse/AMQ-7514 
> [4] https://tools.ietf.org/id/draft-knodel-terminology-02.html 
> [5] https://inclusivenaming.org/word-lists/tier-1/ 
> 
> Thanks,
> 
> Lucas Tétreault
> Software Development Manager, Amazon MQ
> email: tetlu...@amazon.com 
> 

Reply via email to