From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lj1-f196.google.com (mail-lj1-f196.google.com [209.85.208.196]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 7899C445320 for ; Wed, 22 Jul 2020 18:34:03 +0300 (MSK) Received: by mail-lj1-f196.google.com with SMTP id q6so2958224ljp.4 for ; Wed, 22 Jul 2020 08:34:03 -0700 (PDT) From: Cyrill Gorcunov Date: Wed, 22 Jul 2020 18:33:54 +0300 Message-Id: <20200722153359.134718-1-gorcunov@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH 0/5] qsync: write confirm/rollback without txn engine List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: tml Cc: Vladislav Shpilevoy Vlad, take a look please once time permit. Note the series is on top of your series "[PATCH 0/2] Make txn_commit() simpler" I think in our wal engine we should go further and eliminate completion calls for synchronous writes completely (internally WAL could setup completion to fiber_wakeup and reuse async engine) but from API it would not call completion associated with transactions ever. But such redesign is defenitely for other series. Anyway in this series we make a first approach to not use txn engine when we have to simply write confirm/rollback record into a journal. issue https://github.com/tarantool/tarantool/issues/5129 branch gorcunov/gh-5129-journal Cyrill Gorcunov (5): journal: drop redundant declaration wal: bind asynchronous write completion to an entry journal: add journal_entry_create helper qsync: implement direct write of confirm/rollback into a journal qsync: fix release build src/box/box.cc | 14 ++--- src/box/iproto_constants.h | 24 +++++++++ src/box/journal.c | 8 ++- src/box/journal.h | 39 ++++++++++---- src/box/txn.c | 2 +- src/box/txn_limbo.c | 101 ++++++++++++++++++++----------------- src/box/vy_log.c | 2 +- src/box/wal.c | 20 ++++---- src/box/wal.h | 4 +- src/box/xrow.c | 46 ++++------------- src/box/xrow.h | 31 ++++-------- 11 files changed, 151 insertions(+), 140 deletions(-) -- 2.26.2