From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id E848824544 for ; Wed, 3 Jul 2019 19:27:33 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id oss-pfdc63JW for ; Wed, 3 Jul 2019 19:27:33 -0400 (EDT) Received: from smtp36.i.mail.ru (smtp36.i.mail.ru [94.100.177.96]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 388B924527 for ; Wed, 3 Jul 2019 19:27:33 -0400 (EDT) From: Vladislav Shpilevoy Subject: [tarantool-patches] [PATCH 0/5] SWIM loglog preparation Date: Thu, 4 Jul 2019 01:28:29 +0200 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-Help: List-Unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-Subscribe: List-Owner: List-post: List-Archive: To: tarantool-patches@freelists.org Cc: kostja@tarantool.org 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)