[PATCH 0/2] Replication configuration improvements
Vladimir Davydov
vdavydov.dev at gmail.com
Wed Feb 14 20:29:13 MSK 2018
This patch set fixes a couple of issues of box.cfg{replication} that
have been discovered recently, after people started using the quorum and
sync stuff (see #2958). The first one is the inability to revert to the
old behavior, when box.cfg() would never return until it connected to
all replicas (closes #3151). The second issue was raised by @kostja
verbally. He pointed out that box.cfg() should stop syncing to replicas
and return leaving the instance in the 'orphan' mode in case a quorum
can't be formed, because some of the replicas have disconnected.
https://github.com/tarantool/tarantool/issues/2958
https://github.com/tarantool/tarantool/issues/3151
https://github.com/tarantool/tarantool/tree/gh-3151-replication-cfg-improvements
Vladimir Davydov (2):
Introduce replication_connect_timeout configuration option
replication: stop syncing if quorum cannot be formed
src/box/box.cc | 23 +++++++++-
src/box/lua/load_cfg.lua | 2 +
src/box/replication.cc | 93 ++++++++++++++++++++++++++--------------
src/box/replication.h | 48 ++++++++++++---------
test/app-tap/init_script.result | 45 +++++++++----------
test/box-tap/cfg.test.lua | 7 ++-
test/box/admin.result | 2 +
test/box/cfg.result | 4 ++
test/replication/errinj.result | 12 ++----
test/replication/errinj.test.lua | 9 ++--
test/replication/quorum.lua | 1 +
test/replication/replica_ack.lua | 11 -----
12 files changed, 157 insertions(+), 100 deletions(-)
delete mode 100644 test/replication/replica_ack.lua
--
2.11.0
More information about the Tarantool-patches
mailing list