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

Cyrill Gorcunov gorcunov at gmail.com
Mon Aug 17 16:39:09 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. I merged your changes into
"applier: process synchro requests without txn engine" and dropped separate
latch locking helper. Still accessing first and last entries in a queue
is done via separate helpers since it is a way better look.

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

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

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: add shorthands to queue access
  applier: process synchro requests without txn engine
  txn: txn_add_redo -- drop synchro processing
  xrow: drop xrow_header_dup_body

Vladislav Shpilevoy (1):
  xrow: introduce struct synchro_request

 src/box/applier.cc  | 237 +++++++++++++++++++++++++++++++++-----------
 src/box/box.cc      |  36 +++----
 src/box/journal.c   |   8 +-
 src/box/journal.h   |  36 +++++--
 src/box/txn.c       |  11 +-
 src/box/txn_limbo.c | 123 +++++++++++++----------
 src/box/txn_limbo.h |  15 +--
 src/box/vy_log.c    |   2 +-
 src/box/wal.c       |  19 ++--
 src/box/wal.h       |   4 +-
 src/box/xrow.c      |  94 +++++-------------
 src/box/xrow.h      |  85 ++++++++--------
 12 files changed, 377 insertions(+), 293 deletions(-)

-- 
2.26.2



More information about the Tarantool-patches mailing list