[Tarantool-patches] [PATCH v3 01/12] replication: always send raft state to subscribers

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Sun Jul 4 15:12:43 MSK 2021


Hi! Thanks for the patch!

On 29.06.2021 00:12, Serge Petrenko via Tarantool-patches wrote:
> Tarantool used to send out raft state on subscribe only when raft was
> enabled. This was a safeguard against partially-upgraded clusters, where
> some nodes had no clue about Raft messages and couldn't handle them
> properly.
> 
> Actually, Raft state should be sent out always. For example, promote
> will be changed to bump Raft term even when Raft is disabled, and it's
> important that everyone in cluster has the same term for the sake of promote
> at least.
> 
> So, send out Raft state to every subscriber with version >= 2.6.0
> (that's when Raft was introduced).
> Do the same for Raft broadcasts. They should be sent only to replicas
> with version >= 2.6.0
> 
> Closes #5438
> ---
>  src/box/box.cc                               | 11 ++--
>  src/box/relay.cc                             |  4 +-
>  test/replication/gh-5438-raft-state.result   | 63 ++++++++++++++++++++
>  test/replication/gh-5438-raft-state.test.lua | 28 +++++++++

I propose to rename raft -> election in the test name. To be
consistent with the existing election tests. Also it simplifies
running all of them by doing `python test-run.py election`.


More information about the Tarantool-patches mailing list