[Tarantool-patches] [PATCH 2/4] replication: test clear_synchro_queue() function

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Sat Nov 21 17:41:13 MSK 2020


Thanks for the patch!

See 2 comments below.

On 17.11.2020 17:13, sergeyb at tarantool.org wrote:
> From: Sergey Bronnikov <sergeyb at tarantool.org>
> 
> Part of #5055
> Part of #4849
> ---
>  test/replication/qsync_basic.result   | 129 ++++++++++++++++++++++++++
>  test/replication/qsync_basic.test.lua |  45 +++++++++
>  2 files changed, 174 insertions(+)
> 
> diff --git a/test/replication/qsync_basic.result b/test/replication/qsync_basic.result
> index bd3c3cce1..a06f65ce1 100644
> --- a/test/replication/qsync_basic.result
> +++ b/test/replication/qsync_basic.result
> @@ -637,6 +637,135 @@ box.space.sync:count()
>   | - 0
>   | ...
>  
> +--
> +-- gh-4849: clear synchro queue on a master
> +--
> +test_run:switch('default')
> + | ---
> + | - true
> + | ...
> +box.cfg{replication_synchro_quorum = 3, replication_synchro_timeout = 1000}
> + | ---
> + | ...
> +ok, err = nil
> + | ---
> + | ...
> +f = fiber.create(function()							\
> +    ok, err = pcall(box.space.sync.insert, box.space.sync, {10})		\

1. In Lua files we use spaces and 4 symbols indentation step. I
know it would be easier if it would be like in C, but at this point
it is too late to change without a reason.

Here you apparently used tabs for '\' symbols.

> +end)
> + | ---
> + | ...
> +f:status()
> + | ---
> + | - suspended
> + | ...
> +test_run:switch('replica')
> + | ---
> + | - true
> + | ...
> +test_run:wait_cond(function() return box.space.sync:get{10} ~= nil end)
> + | ---
> + | - true
> + | ...
> +test_run:switch('default')
> + | ---
> + | - true
> + | ...
> +box.cfg{replication_synchro_timeout = 0.1}
> + | ---
> + | ...
> +box.ctl.clear_synchro_queue()

2. Current behaviour of the queue clearance is incorrect,
because it should never rollback local rows, see
https://github.com/tarantool/tarantool/issues/5435. It is
fine to have this test, but better leave a comment, that the
test must stop working eventually, and it will be ok to
delete or rework it.


More information about the Tarantool-patches mailing list