Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RATIS-2082] RaftPeers equal should also check address #1085

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

AngersZhuuuu
Copy link
Contributor

@AngersZhuuuu AngersZhuuuu commented May 9, 2024

What changes were proposed in this pull request?

We have two raft cluster,

A cluster IP is

A1:7082,A2:7082,A3:7082

B cluster master ip is 

B1:7082,B2:7082,B3:7082

When we start A cluster we use a wrong config 

A1:7082,A2:7082,B3:7082

After we start the cluster we found we use wrong config.

But this info has been write to raft-meta.conf.

Then after we restart A cluster, when client connect to A cluster.

It connect to A cluster follower then return the cached leader address, the leader peer id is 3, but in the meta conf, the peer rpc link is B3:7082.

Then cause it connect to cluster B.

Its caused by RaftPeer object equal only compare peerId cause it won't refresh raft-meta.conf
image

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/RATIS-2082

How was this patch tested?

(Please explain how this patch was tested. Ex: unit tests, manual tests)
(If this patch involves UI changes, please attach a screen-shot; otherwise, remove this)

@AngersZhuuuu
Copy link
Contributor Author

ping @codings-dan @szetszwo

Copy link
Contributor

@szetszwo szetszwo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RaftPeer is a public API so changing it becomes incompatible.

Let's fix RaftMetaConfCommand instead?

@AngersZhuuuu
Copy link
Contributor Author

I think https://issues.apache.org/jira/browse/RATIS-1860 meets the same issue and can fix the issue by ratis-shell.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants