From: Georgy Kirichenko <georgy@tarantool.org> To: tarantool-patches@freelists.org Cc: Georgy Kirichenko <georgy@tarantool.org> Subject: [tarantool-patches] [PATCH v2 0/8] Make transaction autonomous from a fiber internals Date: Thu, 23 May 2019 11:19:32 +0300 [thread overview] Message-ID: <cover.1558598679.git.georgy@tarantool.org> (raw) This patch set is focused on two major options: 1. To make a transaction and a fiber independent from one another 2. To make a transaction commit asynchronous. The first one detaches transaction from fiber and stores all transaction data into a its own memory region. The second one is intended to allow to have more than one transaction per fiber in fly and it is a prerequisite for a parallel applier. Changes in v2: - Three patches are merged to master - Replicated rows are also copied to txn region - A fiber to process tx_prio endpoint - Engine commit and triggers are changed in order - Minor fixes according to review Issue: https://github.com/tarantool/tarantool/issues/1254 Branch: https://github.com/tarantool/tarantool/tree/g.kirichenko/gh-1254-remove-fiber-from-txn Georgy Kirichenko (8): Encode a dml statement to a transaction memory region Get rid of autocommit from a txn structure Get rid of fiber_gc from txn_rollback Remove fiber from a journal_entry structure Commit engine before all triggers Offload tx_prio processing to a fiber Enable asyncronous wal writes Introduce asynchronous txn commit src/box/applier.cc | 36 +++++-- src/box/box.cc | 160 ++++++++++++++++++++++++----- src/box/call.c | 16 ++- src/box/index.cc | 10 +- src/box/journal.c | 23 ++++- src/box/journal.h | 47 ++++++++- src/box/memtx_engine.c | 11 +- src/box/memtx_space.c | 8 +- src/box/request.c | 2 +- src/box/sql.c | 2 +- src/box/txn.c | 221 ++++++++++++++++++++++++----------------- src/box/txn.h | 30 +++--- src/box/vinyl.c | 12 +-- src/box/vy_log.c | 2 +- src/box/vy_scheduler.c | 16 +-- src/box/vy_stmt.c | 4 +- src/box/wal.c | 79 +++++++++++---- src/box/xrow.c | 14 +-- src/box/xrow.h | 12 ++- 19 files changed, 501 insertions(+), 204 deletions(-) -- 2.21.0
next reply other threads:[~2019-05-23 8:21 UTC|newest] Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-05-23 8:19 Georgy Kirichenko [this message] 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 1/8] Encode a dml statement to a transaction memory region Georgy Kirichenko 2019-05-28 1:21 ` [tarantool-patches] " Kirill Yukhin 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 2/8] Get rid of autocommit from a txn structure Georgy Kirichenko 2019-05-27 20:51 ` [tarantool-patches] " Konstantin Osipov 2019-05-31 19:21 ` Konstantin Osipov 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 3/8] Get rid of fiber_gc from txn_rollback Georgy Kirichenko 2019-05-31 19:27 ` [tarantool-patches] " Konstantin Osipov 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 4/8] Remove fiber from a journal_entry structure Georgy Kirichenko 2019-05-31 19:29 ` [tarantool-patches] " Konstantin Osipov 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 5/8] Commit engine before all triggers Georgy Kirichenko 2019-05-31 19:32 ` [tarantool-patches] " Konstantin Osipov 2019-06-03 8:07 ` Георгий Кириченко 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 6/8] Offload tx_prio processing to a fiber Georgy Kirichenko 2019-05-31 19:36 ` [tarantool-patches] " Konstantin Osipov 2019-06-03 8:04 ` Георгий Кириченко 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 7/8] Enable asyncronous wal writes Georgy Kirichenko 2019-05-31 19:41 ` [tarantool-patches] " Konstantin Osipov 2019-06-03 8:09 ` Георгий Кириченко 2019-05-23 8:19 ` [tarantool-patches] [PATCH v2 8/8] Introduce asynchronous txn commit Georgy Kirichenko 2019-05-31 19:43 ` [tarantool-patches] " Konstantin Osipov
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=cover.1558598679.git.georgy@tarantool.org \ --to=georgy@tarantool.org \ --cc=tarantool-patches@freelists.org \ --subject='Re: [tarantool-patches] [PATCH v2 0/8] Make transaction autonomous from a fiber internals' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox