From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> To: tarantool-patches@freelists.org, Vladimir Davydov <vdavydov.dev@gmail.com>, kostja@tarantool.org Subject: Re: [tarantool-patches] [PATCH 6/6] Introduce replica local spaces Date: Thu, 14 Jun 2018 00:26:18 +0300 [thread overview] Message-ID: <f049e935-6c0b-8fed-cd2e-a3d89a6260ed@tarantool.org> (raw) In-Reply-To: <22474f0135864e15bb4aa2aed19662b7911aa225.1528906027.git.vdavydov.dev@gmail.com> On 13/06/2018 19:10, Vladimir Davydov wrote: > This patch introduces a new space option, is_local, which if specified > on space creation will render all changes done locally to the space > invisible to other replicas. The option can only be set on space > creation and cannot be altered. > > Technically, to support this feature, we introduce a new header flag, > IPROTO_IS_LOCAL, which is set for all rows corresponding to replica > local spaces both in xlog and in snap. Relay won't send snapshot rows > that are marked local. As for xlog rows, it will transform them to > IPROTO_NOP so as to promote vclock on the replica without doing any > actual data modification. > > The feature is currently supported for memtx spaces only, but it should > be easy to implement it for vinyl spaces as well. > > Closes #3443 Please, write here a documentation bot request. Yes, you can do it right in a commit message at the end. Using the same syntax as for tickets. Once the patch is pushed into the trunk (now it is 2.0), the bot will create the documentation issue automatically. After the patch was pushed on any branch, you could check that the bot got your request here: http://try.tarantool.org:11116 in TarantoolBot Journal. > --- > src/box/alter.cc | 4 + > src/box/iproto_constants.c | 4 +- > src/box/iproto_constants.h | 1 + > src/box/lua/schema.lua | 9 +- > src/box/lua/space.cc | 5 ++ > src/box/lua/xlog.c | 5 ++ > src/box/memtx_engine.c | 8 +- > src/box/relay.cc | 17 +++- > src/box/space.h | 12 ++- > src/box/space_def.c | 2 + > src/box/space_def.h | 5 ++ > src/box/txn.c | 3 + > src/box/vinyl.c | 5 ++ > src/box/xrow.c | 9 ++ > src/box/xrow.h | 1 + > test/engine/iterator.result | 2 +- > test/replication/local_spaces.result | 159 +++++++++++++++++++++++++++++++++ > test/replication/local_spaces.test.lua | 54 +++++++++++ > test/replication/suite.cfg | 1 + > test/vinyl/ddl.result | 5 ++ > test/vinyl/ddl.test.lua | 3 + > 21 files changed, 304 insertions(+), 10 deletions(-) > create mode 100644 test/replication/local_spaces.result > create mode 100644 test/replication/local_spaces.test.lua >
next prev parent reply other threads:[~2018-06-13 21:26 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-06-13 16:10 [PATCH 0/6] " Vladimir Davydov 2018-06-13 16:10 ` [PATCH 1/6] txn: remove unused C++ wrappers Vladimir Davydov 2018-06-27 17:08 ` Konstantin Osipov 2018-06-13 16:10 ` [PATCH 2/6] xrow: fix ret code on decode failure Vladimir Davydov 2018-06-27 17:29 ` Konstantin Osipov 2018-06-13 16:10 ` [PATCH 3/6] iproto: fix IPROTO_SERVER_IS_RO key code Vladimir Davydov 2018-06-27 17:48 ` Konstantin Osipov 2018-06-13 16:10 ` [PATCH 4/6] txn: do not require space id for nop requests Vladimir Davydov 2018-06-27 17:45 ` Konstantin Osipov 2018-06-28 9:13 ` Vladimir Davydov 2018-06-28 10:23 ` Konstantin Osipov 2018-06-28 10:35 ` Vladimir Davydov 2018-06-28 10:54 ` Konstantin Osipov 2018-06-28 11:10 ` Vladimir Davydov 2018-06-13 16:10 ` [PATCH 5/6] xrow: make NOP requests bodiless Vladimir Davydov 2018-06-27 17:49 ` Konstantin Osipov 2018-06-13 16:10 ` [PATCH 6/6] Introduce replica local spaces Vladimir Davydov 2018-06-13 21:26 ` Vladislav Shpilevoy [this message] 2018-06-27 18:24 ` Konstantin Osipov 2018-06-27 18:27 ` 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=f049e935-6c0b-8fed-cd2e-a3d89a6260ed@tarantool.org \ --to=v.shpilevoy@tarantool.org \ --cc=kostja@tarantool.org \ --cc=tarantool-patches@freelists.org \ --cc=vdavydov.dev@gmail.com \ --subject='Re: [tarantool-patches] [PATCH 6/6] Introduce replica local spaces' \ /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