From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Subject: Re: [tarantool-patches] [PATCH v2 0/6] SWIM From: Vladislav Shpilevoy Reply-To: tarantool-patches@freelists.org References: Message-ID: <389ca019-7554-eef0-0486-37c45ff32b7c@tarantool.org> Date: Thu, 27 Dec 2018 00:01:11 +0300 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit To: tarantool-patches@freelists.org Cc: vdavydov.dev@gmail.com, kostja@tarantool.org List-ID: Hi! Sorry, if you still did not start a review, do not pay a lot of attention to internals - I've already reworked them mainly because of struggles with adding payload and indirect pings. But still stay as sharp as possible reviewing public API, especially C in swim.h. Just FYI. On 25/12/2018 22:19, Vladislav Shpilevoy wrote: > First commit message is a comprehensive information about SWIM which I will not > duplicate here. This is only description of the patchset. > > SWIM consists of two main components - dissemination and failure detection, and > one additional component - anti-entropy. The patchset introduces them one by one > in the first three commits. > > Last two commits are technical improvements. > > Note, these commits contain bugs, typos, and have no tests. The goal of this > review is a highlevel approval of API so as to start writing tests. > > Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-3234-swim > Issue: https://github.com/tarantool/tarantool/issues/3234 > > Changes in v2: > - new API with explicit members addition, removal; > - ability to create multiple SWIM instances per one Tarantool process; > - multi-packet sending of one SWIM message. > > V1: https://www.freelists.org/post/tarantool-patches/PATCH-05-SWIM > > Vladislav Shpilevoy (6): > [RAW] swim: introduce SWIM's anti-entropy component > [RAW] swim: introduce failure detection component > [RAW] swim: introduce a dissemination component > [RAW] swim: keep encoded round message cached > [RAW] swim: send one UDP packet per EV_WRITE event > > src/CMakeLists.txt | 3 +- > src/evio.c | 3 +- > src/evio.h | 4 + > src/lib/CMakeLists.txt | 1 + > src/lib/swim/CMakeLists.txt | 6 + > src/lib/swim/swim.c | 1868 ++++++++++++++++++++++++++++++ > src/lib/swim/swim.h | 130 ++ > src/lua/init.c | 2 + > src/lua/swim.c | 243 ++++ > src/lua/swim.h | 47 + > 10 files changed, 2304 insertions(+), 3 deletions(-) > create mode 100644 src/lib/swim/CMakeLists.txt > create mode 100644 src/lib/swim/swim.c > create mode 100644 src/lib/swim/swim.h > create mode 100644 src/lua/swim.c > create mode 100644 src/lua/swim.h >