From: Alexander Turenko <alexander.turenko@tarantool.org>
To: avtikhon <avtikhon@tarantool.org>
Cc: tarantool-patches@freelists.org
Subject: [tarantool-patches] Re: [PATCH v2] Use SIGKILL to stop server replica
Date: Tue, 30 Apr 2019 05:58:04 +0300 [thread overview]
Message-ID: <20190430025804.477ggvot3y33jk3c@tkn_work_nb> (raw)
In-Reply-To: <f661fa6f9951afb520823213777cd2f6cfce3ce2.1556564766.git.avtikhon@tarantool.org>
The change of the test case itself is okay for me, but I have some
comments around. See below.
WBR, Alexander Turenko.
On Mon, Apr 29, 2019 at 10:07:05PM +0300, avtikhon wrote:
> Used the signal option set to SIGKILL to stop server replica
> routine to be able to stop the replica imediately to imitate
Typo: imediately -> immediately.
> the replica crash and, then, wake up.
> Just 'stop server replica' (SIGTERM) is not sufficient to stop
> a tarantool instance when ERRINJ_WAL_DELAY is set, because
> "tarantool" thread wait for paused "wal" thread infinitely.
> Changed server stop routine to to kill routine to be able
Typo: to to -> to.
> to use SIGKILL instead of SIGTERM to the replica server. In
> this way the server replica will be killed immediately and
> *.xlog files will be removed as it has to be.
I would clarify that here you solves two problems: the incorrect test
case and flaky failures. Also it worth to mention an issue about the
flaky failures.
> Close #4162
And, I guess, #4034.
> Github: https://github.com/tarantool/tarantool/tree/avtikhon/gh-4162-stop-kill
> Issue: https://github.com/tarantool/tarantool/issues/4162
The patch contains many changes that are not related to the test case
itself. Please, factor them out or, better, just drop (if they don't
affect a behaviour of the test).
This will make the patch more clear for future readers. And, to be
honest, I don't think that there is any real difference between 10
seconds and 60 seconds for our test cases: each of them should be quite
short even when a system is under heavy load. Don't sure about a
swapping system, though; but unlikely we can do something with timeouts
tweaking for this case in general.
If these changes are really matter it worth to look at a reason and fix
separately. So we'll sure we don't just pollute git blame output.
> -test_run:cmd("switch replica")
> +-- Imitate the replica crash and, then, wake up.
> +-- Just 'stop server replica' (SIGTERM) is not sufficient to stop
> +-- a tarantool instance when ERRINJ_WAL_DELAY is set, because
> +-- "tarantool" thread wait for paused "wal" thread infinitely.
> +test_run:cmd("kill server replica")
Please, update according to test-run changes: stop server replica with
signal=SIGKILL (right?).
> -- Check that garbage collection removed the snapshot once
> -- the replica released the corresponding checkpoint.
> -wait_gc(1) or box.info.gc()
> -wait_xlog(1) or fio.listdir('./master') -- Make sure the replica will not receive data until
> +wait_gc(1)
> +wait_xlog(1)
> -- we test garbage collection.
See, it was the comment:
> -- Make sure the replica will not receive data until
> -- we test garbage collection.
Now only the second part remains :)
prev parent reply other threads:[~2019-04-30 2:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-29 19:07 [tarantool-patches] " avtikhon
2019-04-30 2:58 ` Alexander Turenko [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190430025804.477ggvot3y33jk3c@tkn_work_nb \
--to=alexander.turenko@tarantool.org \
--cc=avtikhon@tarantool.org \
--cc=tarantool-patches@freelists.org \
--subject='[tarantool-patches] Re: [PATCH v2] Use SIGKILL to stop server replica' \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox