Get the App
SLTechnology News&Howtos  ›  Database  › 

I have no choice but to! The Redis author was forced to modify the description of the master-slave schema

Shulou Source: shulou.com Published: 2022-06-01 06:15:22 10月03日 Update

I believe all the developers here will not be unfamiliar with Redis's master-slave mode (master-slave). The master-slave pattern in Redis is actually derived from a concept of the same name in MySQL and is a means of synchronizing data. In such a scene, master-slave is supposed to be an unemotional word. However, many developers do not think so. after reading the change log of Redis 5.0RC5, they find that Redis is still using the terms "master" and "slave" to distinguish between different roles in Redis replication. They are disappointed and hope that the Redis author can modify the description of the master-slave architecture in Redis.

According to antirez, author of Redis, this is not the first time a developer has made such a request. But the call for change was so loud that even an anonymous poll conducted by antirez on Twitter showed that more than half of people wanted to change the description of master-slave.

Antirez said he was sorry that the description of master-slave disappointed many people, but he didn't think the context-specific term was intrusive. So his use of master-slave in the database certainly does not imply "slavery" in any way.

Antirez also said that this seemingly simple change is actually expensive and creates compatibility issues. For example:

Cannot apply existing PR

Now there are commands like INFO and ROLE-- reply using a protocol that contains slave terminology

The source code in the term slave contains 1500 events

People who own private projects and merge code as needed will encounter a lot of problems.

It can be seen that rash changes will give rise to a lot of problems. Moreover, the currently released candidate version of Redis 5 is the first stable version of backward compatibility. So this is also an aspect that needs to be considered. Finally, antirez expressed the hope that there would be a compromise to solve the problem.

Changes in the short term

Change the description of the master-slave schema to master-replica

Provide an alias REPLICAOF for SLAVEOF, so you can still use SLAVEOF, but with one more option

Keep using slave to respond to INFO and ROLE, which now appears to be a major disruptive change

Long-term change

Write a substitute for INFO

Replace a lot of things internally, because of technical reasons, if you make changes, many PR will not be applied, so you have to make big changes in some places.

……

Antirez believes that these so-called "political correctness" do not make any sense, and he also expresses his political inclinations on his blog. He actively talks about politics on social networks every day to promote social equality. He wants a world of fairness, opportunity, redistribution of wealth and an open world. But he believes that the way to get the world is not to ban speech or to crusade against others on Twitter-just to get others to follow your ideology. Antirez says he will continue his political activities and will continue to write open source software.

Reference link

Http://antirez.com/news/122

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

Tags: Politics terminology problems developers developers authors Architecture disappointment World Master and Slave data methods patterns versions changes changes applications Equality Sorry expensive Apple Docker Huawei Linux macOS MariaDB Microsoft MySQL NVidia OPPO Reno Shulou Tech Info Huawei NVidia macOS Docker