[tarantool-patches] [PATCH v2 0/3] swim suspicion

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Wed Apr 24 23:21:57 MSK 2019


For details of the suspicion component look at the last commit. Here is a
description of the patchset in whole.

Second patch about routing is in fact the key part of the patchset. It
introduces new section in SWIM packets for routes. Route is a pair: source and
destination addresses. With help of the routing it becomes possible to send any
SWIM packets indirectly via arbitrary SWIM member to another member.

The last commit just harnesses routing section to send the same ping/ack
messages, but indirectly after several direct attempts.

Changes in V2:
- added UUID to struct swim_task;
- dropped swim_iping_block structure;
- a few changes in parameter names and comments.

V1: https://www.freelists.org/post/tarantool-patches/PATCH-06-swim-suspicion

Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-3234-swim-suspicion
Issue: https://github.com/tarantool/tarantool/issues/3234

Vladislav Shpilevoy (3):
  swim: store sender UUID in swim io tasks
  swim: introduce routing
  swim: introduce suspicion

 src/lib/swim/swim.c           | 148 ++++++++++++++++++++++++++++++----
 src/lib/swim/swim_constants.h |   6 ++
 src/lib/swim/swim_io.c        |  96 ++++++++++++++++++++--
 src/lib/swim/swim_io.h        |  21 ++++-
 src/lib/swim/swim_proto.c     |  84 ++++++++++++++++++-
 src/lib/swim/swim_proto.h     |  88 +++++++++++++++++++-
 test/unit/swim.c              |  76 ++++++++++++-----
 test/unit/swim.result         |  30 ++++---
 test/unit/swim_proto.c        |  56 ++++++++++++-
 test/unit/swim_proto.result   |  11 ++-
 10 files changed, 554 insertions(+), 62 deletions(-)

-- 
2.20.1 (Apple Git-117)





More information about the Tarantool-patches mailing list