[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