raft-rs icon indicating copy to clipboard operation
raft-rs copied to clipboard

Introduce follower replication

Open Fullstop000 opened this issue 5 years ago • 7 comments

https://github.com/pingcap/raft-rs/issues/136

New features

  • Add some new fields in Message
  • New concepts Group and Delegate in the cluster topology
  • ~~A message now could be sent to a proxy and the proxy redirects the message to the destination~~

TODOs

  • [x] The leader can specify the Delegate of a Group
  • [x] The Delegate can bcast_append or send_append to the other members in the Group
  • [x] Stable group delegate
  • [x] Scenarios based testing

Problems

~~The ConfChange protocol for raft groups might need to be discussed.~~ Solved as GroupConfig is now volatile.

The implementation has been ported to etcd: https://github.com/etcd-io/etcd/pull/11455.

Fullstop000 avatar Jul 01 '19 08:07 Fullstop000

I've finished the main part of this PR. But I'm not sure the best way to implement the ConfChange for altering raft groups dynamically so I want a discussion with your guys.

PTAL @siddontang @hicqu @BusyJay @Hoverbear

Fullstop000 avatar Sep 05 '19 02:09 Fullstop000

@Fullstop000 Can you please include links to any design docs you worked on?

Hoverbear avatar Sep 09 '19 20:09 Hoverbear

@Hoverbear Can I make a WIP PR in tikv/rfc ?

Fullstop000 avatar Sep 10 '19 06:09 Fullstop000

@Fullstop000 I think it's OK. :) I'd still really appreciate seeing an RFC (like https://docs.google.com/document/d/1Sp9Tnc_nk_i0feTOgLGPT3jZYVFjfP7C6pwA-wuVHko/edit?ts=5c8c5fe3 which you worked on)

Hoverbear avatar Sep 18 '19 21:09 Hoverbear

@hicqu PTAL

Hoverbear avatar Nov 07 '19 19:11 Hoverbear

Any updates?

TennyZhuang avatar Aug 20 '21 08:08 TennyZhuang

This PR is discontinued for so long, any updates here? Do we have a plan to get it merged?

Xuanwo avatar Aug 24 '21 05:08 Xuanwo