Tarantool development patches archive
 help / color / mirror / Atom feed
* [Tarantool-patches] [PATCH v2 0/5] Bootstrap voter
@ 2021-07-18 16:53 Vladislav Shpilevoy via Tarantool-patches
  2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 1/5] replication: introduce ballot.can_lead Vladislav Shpilevoy via Tarantool-patches
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: Vladislav Shpilevoy via Tarantool-patches @ 2021-07-18 16:53 UTC (permalink / raw)
  To: tarantool-patches, gorcunov, sergepetrenko

Changes in v2:
- Moved 'manual' election mode fix into a separate commit;
- Replaced raft_start/stop_candidate() with raft_promote/restore();
- Renamed ballot.can_be_leader to ballot.can_lead.

Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-6018-boot-voter
Issue: https://github.com/tarantool/tarantool/issues/6018

Vladislav Shpilevoy (5):
  replication: introduce ballot.can_lead
  box: save box_raft() into a variable
  raft: replace raft_start_candidate with _promote
  election: during bootstrap prefer candidates
  election: promote 'manual' bootstrap master

 .../unreleased/gh-6018-election-boot-voter.md |   4 +
 src/box/box.cc                                |  74 ++++++-----
 src/box/errcode.h                             |   2 +-
 src/box/iproto_constants.h                    |   1 +
 src/box/raft.c                                |  58 +++++++--
 src/box/raft.h                                |   4 +-
 src/box/replication.cc                        |  11 +-
 src/box/xrow.c                                |  14 ++-
 src/box/xrow.h                                |   2 +
 src/lib/raft/raft.c                           |  98 ++++++++-------
 src/lib/raft/raft.h                           |  13 +-
 test/box/error.result                         |   2 +-
 .../gh-6018-election-boot-voter.result        | 116 ++++++++++++++++++
 .../gh-6018-election-boot-voter.test.lua      |  59 +++++++++
 test/replication/gh-6018-master.lua           |  17 +++
 test/replication/gh-6018-replica.lua          |  15 +++
 test/replication/suite.cfg                    |   1 +
 test/unit/raft.c                              |  41 ++++---
 test/unit/raft.result                         |  22 ++--
 test/unit/raft_test_utils.c                   |  17 +--
 test/unit/raft_test_utils.h                   |  16 +--
 21 files changed, 438 insertions(+), 149 deletions(-)
 create mode 100644 changelogs/unreleased/gh-6018-election-boot-voter.md
 create mode 100644 test/replication/gh-6018-election-boot-voter.result
 create mode 100644 test/replication/gh-6018-election-boot-voter.test.lua
 create mode 100644 test/replication/gh-6018-master.lua
 create mode 100644 test/replication/gh-6018-replica.lua

-- 
2.24.3 (Apple Git-128)


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2021-07-21 21:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-18 16:53 [Tarantool-patches] [PATCH v2 0/5] Bootstrap voter Vladislav Shpilevoy via Tarantool-patches
2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 1/5] replication: introduce ballot.can_lead Vladislav Shpilevoy via Tarantool-patches
2021-07-21 21:38   ` Vladislav Shpilevoy via Tarantool-patches
2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 2/5] box: save box_raft() into a variable Vladislav Shpilevoy via Tarantool-patches
2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 3/5] raft: replace raft_start_candidate with _promote Vladislav Shpilevoy via Tarantool-patches
2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 4/5] election: during bootstrap prefer candidates Vladislav Shpilevoy via Tarantool-patches
2021-07-18 16:53 ` [Tarantool-patches] [PATCH v2 5/5] election: promote 'manual' bootstrap master Vladislav Shpilevoy via Tarantool-patches
2021-07-19 14:27 ` [Tarantool-patches] [PATCH v2 0/5] Bootstrap voter Sergey Petrenko via Tarantool-patches
2021-07-20  8:18 ` Cyrill Gorcunov via Tarantool-patches

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox