Tarantool development patches archive
 help / color / mirror / Atom feed
From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>
To: tarantool-patches@freelists.org
Cc: kostja@tarantool.org
Subject: [tarantool-patches] [PATCH 0/5] SWIM loglog preparation
Date: Thu,  4 Jul 2019 01:28:29 +0200	[thread overview]
Message-ID: <cover.1562196102.git.v.shpilevoy@tarantool.org> (raw)

The patchset prepares ground for a new SWIM's killer feature -
O(log(log(cluster_size))) full dissemination time.

Most of the commits are quite obvious, see their commit messages.

The last two ones could look strange. I've the final loglog commit on another
branch, and it slows down the SWIM tests in 2-3 times just spending much and
much more time on checking and decoding MessagePack in the padded out messages.
According to the profiler, most of the time is spent in mp_decode/check_uint,
when I use Debug build.

The last two commits compensate that problem, making the tests perhaps even
faster than before the whole 4253. Especially the last one. See their messages
for details.

Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-4253-loglog-preparation
Issue: https://github.com/tarantool/tarantool/issues/4253

Vladislav Shpilevoy (5):
  swim: fix flaky 'indirect pings' test
  swim: sadly remove cache
  test: redo some swim tests using error injections
  swim: speed-up tests
  swim: speed-up empty payloads cluster bootstrap

 src/lib/core/errinj.h        |   1 +
 src/lib/swim/swim.c          |  53 ++++------
 test/swim/errinj.result      | 102 ++++++++++++++++++
 test/swim/errinj.test.lua    |  41 ++++++++
 test/swim/suite.ini          |   1 +
 test/swim/swim.result        |  55 ----------
 test/swim/swim.test.lua      |  22 ----
 test/unit/CMakeLists.txt     |   5 +
 test/unit/suite.ini          |   1 +
 test/unit/swim.c             | 197 ++--------------------------------
 test/unit/swim.result        |  31 ++----
 test/unit/swim_errinj.c      | 199 +++++++++++++++++++++++++++++++++++
 test/unit/swim_errinj.result |  18 ++++
 test/unit/swim_test_utils.c  | 102 ++++++------------
 test/unit/swim_test_utils.h  |  24 +++--
 15 files changed, 456 insertions(+), 396 deletions(-)
 create mode 100644 test/swim/errinj.result
 create mode 100644 test/swim/errinj.test.lua
 create mode 100644 test/unit/swim_errinj.c
 create mode 100644 test/unit/swim_errinj.result

-- 
2.20.1 (Apple Git-117)

             reply	other threads:[~2019-07-03 23:27 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-03 23:28 Vladislav Shpilevoy [this message]
2019-07-03 23:28 ` [tarantool-patches] [PATCH 1/5] swim: fix flaky 'indirect pings' test Vladislav Shpilevoy
2019-07-04  8:20   ` [tarantool-patches] " Konstantin Osipov
2019-07-03 23:28 ` [tarantool-patches] [PATCH 2/5] swim: sadly remove cache Vladislav Shpilevoy
2019-07-04  8:22   ` [tarantool-patches] " Konstantin Osipov
2019-07-03 23:28 ` [tarantool-patches] [PATCH 3/5] test: redo some swim tests using error injections Vladislav Shpilevoy
2019-07-04  8:23   ` [tarantool-patches] " Konstantin Osipov
2019-07-03 23:28 ` [tarantool-patches] [PATCH 4/5] swim: speed-up tests Vladislav Shpilevoy
2019-07-04  8:24   ` [tarantool-patches] " Konstantin Osipov
2019-07-03 23:28 ` [tarantool-patches] [PATCH 5/5] swim: speed-up empty payloads cluster bootstrap Vladislav Shpilevoy
2019-07-04  8:26   ` [tarantool-patches] " Konstantin Osipov
2019-07-05 22:44 ` [tarantool-patches] Re: [PATCH 0/5] SWIM loglog preparation Vladislav Shpilevoy

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=cover.1562196102.git.v.shpilevoy@tarantool.org \
    --to=v.shpilevoy@tarantool.org \
    --cc=kostja@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='Re: [tarantool-patches] [PATCH 0/5] SWIM loglog preparation' \
    /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