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

Cyrill Gorcunov gorcunov at gmail.com
Thu Aug 20 00:34:35 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. Since the series reaches
v9 I desided to resend it instead of continue replying old thread,
just for a final review.

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-9

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

v8:
 - move synchro requests processing into
   applier_apply_tx (by Vlad)
 - drop synchro processing from txn_add_redo

v9:
 - rebase on master branch
 - drop "applier: add shorthands to queue access"
   from the series

Cyrill Gorcunov (7):
  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: process synchro requests without txn engine
  txn: txn_add_redo -- drop synchro processing
  xrow: drop xrow_header_dup_body

 src/box/applier.cc  | 200 ++++++++++++++++++++++++++++++++------------
 src/box/box.cc      |  15 ++--
 src/box/journal.c   |   8 +-
 src/box/journal.h   |  36 ++++++--
 src/box/txn.c       |  11 +--
 src/box/txn_limbo.c |  71 +++++++++-------
 src/box/vy_log.c    |   2 +-
 src/box/wal.c       |  19 ++---
 src/box/wal.h       |   4 +-
 src/box/xrow.c      |  56 ++++---------
 src/box/xrow.h      |  28 ++++---
 11 files changed, 271 insertions(+), 179 deletions(-)


base-commit: ee07eab4da1d00da6ed848f1833cacd32b71c6eb
-- 
2.26.2



More information about the Tarantool-patches mailing list