[Tarantool-patches] [PATCH v7 0/8] qsync: write CONFIRM/ROLLBACK without txn engine

Cyrill Gorcunov gorcunov at gmail.com
Sat Aug 15 00:14:34 MSK 2020


In this series we write CONFIRM/ROLLBACK messages into the WAL directly
without involving the txn engine.

Vlad, take a look please, once time permit. Note this branch carries
yours "xrow: introduce struct synchro_request" which I fetched and
applier manually since it wasn't yet in master branch.

First 4 patches you've read already and hopefully I addressed
all your comments.

issue https://github.com/tarantool/tarantool/issues/5129
branch gorcunov/gh-5129-journal-7

v3:
 - bootstrap journal left NULL for async write
 - journal_write_async_cb_t type for async callback
 - struct synchro_body_bin type for encoded message
 - xrow_encode_synchro helper to operate with synchro_body_bin

v7:
 - rebase on master
 - rework applier code

Cyrill Gorcunov (8):
  journal: bind asynchronous write completion to an entry
  journal: add journal_entry_create helper
  qsync: provide a binary form of syncro entries
  qsync: direct write of CONFIRM/ROLLBACK into a journal
  applier: factor out latch locking
  applier: add shorthands to queue access
  applier: process synchro requests without txn engine
  applier: drop process_synchro_row

 src/box/applier.cc  | 295 ++++++++++++++++++++++++++++++++++----------
 src/box/box.cc      |  15 +--
 src/box/journal.c   |   8 +-
 src/box/journal.h   |  36 ++++--
 src/box/txn.c       |   2 +-
 src/box/txn_limbo.c |  69 ++++++-----
 src/box/vy_log.c    |   2 +-
 src/box/wal.c       |  19 ++-
 src/box/wal.h       |   4 +-
 src/box/xrow.c      |  41 +++---
 src/box/xrow.h      |  20 ++-
 11 files changed, 351 insertions(+), 160 deletions(-)

-- 
2.26.2



More information about the Tarantool-patches mailing list