From: Vladislav Shpilevoy <v.shpilevoy@tarantool.org> To: tarantool-patches@dev.tarantool.org, olegrok@tarantool.org, yaroslav.dynnikov@tarantool.org Subject: [Tarantool-patches] [PATCH vshard 0/2] vshard upgrade and _call Date: Sat, 21 Mar 2020 19:59:24 +0100 [thread overview] Message-ID: <cover.1584817081.git.v.shpilevoy@tarantool.org> (raw) The patchset introduces vshard.storage._call() API - one access point for all internal functions. It allows to hide them from the public usage behind one function, and to add/remove internal functions on read-only replicas using restart or hot code reload. The new call is going to be firstly used by the new discovery, which currently suffers from too long tx thread usage when fetches millions of buckets. The existing buckets_discovery() function can't be changed because it is public. So a new will be added inside _call(). To make it possible to introduce _call() and remove old functions the patchset describes and implements upgrade strategy, which was not really well thought through and developed until now. Branch: http://github.com/tarantool/tarantool/tree/gerold103/gh-227-service-call Issue: https://github.com/tarantool/tarantool/issues/227 Vladislav Shpilevoy (2): storage: introduce upgrade strategy storage: introduce vshard.storage._call() test/upgrade/box.lua | 9 ++ test/upgrade/storage_1_a.lua | 11 ++ test/upgrade/storage_1_b.lua | 1 + test/upgrade/storage_2_a.lua | 1 + test/upgrade/storage_2_b.lua | 1 + test/upgrade/suite.ini | 7 + test/upgrade/upgrade.result | 271 ++++++++++++++++++++++++++++++++++ test/upgrade/upgrade.test.lua | 97 ++++++++++++ vshard/storage/init.lua | 147 +++++++++++++++++- 9 files changed, 541 insertions(+), 4 deletions(-) create mode 100644 test/upgrade/box.lua create mode 100644 test/upgrade/storage_1_a.lua create mode 120000 test/upgrade/storage_1_b.lua create mode 120000 test/upgrade/storage_2_a.lua create mode 120000 test/upgrade/storage_2_b.lua create mode 100644 test/upgrade/suite.ini create mode 100644 test/upgrade/upgrade.result create mode 100644 test/upgrade/upgrade.test.lua -- 2.21.1 (Apple Git-122.3)
next reply other threads:[~2020-03-21 18:59 UTC|newest] Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-03-21 18:59 Vladislav Shpilevoy [this message] 2020-03-21 18:59 ` [Tarantool-patches] [PATCH vshard 1/2] storage: introduce upgrade strategy Vladislav Shpilevoy 2020-03-22 5:05 ` Oleg Babin 2020-03-22 19:12 ` Vladislav Shpilevoy 2020-03-23 6:35 ` Oleg Babin 2020-03-23 22:32 ` Vladislav Shpilevoy 2020-03-24 4:32 ` Oleg Babin 2020-03-24 15:21 ` Yaroslav Dynnikov 2020-03-24 23:44 ` Vladislav Shpilevoy 2020-03-21 18:59 ` [Tarantool-patches] [PATCH vshard 2/2] storage: introduce vshard.storage._call() Vladislav Shpilevoy 2020-03-22 5:08 ` Oleg Babin 2020-03-22 19:13 ` Vladislav Shpilevoy 2020-03-23 6:42 ` Oleg Babin 2020-03-23 22:32 ` Vladislav Shpilevoy
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.1584817081.git.v.shpilevoy@tarantool.org \ --to=v.shpilevoy@tarantool.org \ --cc=olegrok@tarantool.org \ --cc=tarantool-patches@dev.tarantool.org \ --cc=yaroslav.dynnikov@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH vshard 0/2] vshard upgrade and _call' \ /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