[tarantool-patches] [PATCH v4] vshard module reload

AKhatskevich avkhatskevich at tarantool.org
Mon Jul 30 11:56:02 MSK 2018


Issue1: https://github.com/tarantool/vshard/issues/112
Issue2: https://github.com/tarantool/vshard/issues/125
Branch: https://github.com/tarantool/vshard/tree/kh/gh-112-reload-mt-2

This patcheset improves vshard reload mechanism.

Changes since PATCH v2:
 - Races related to object outdating are fixed.
 - Reloadable fiber is refactored (allow to pass a data to a function).

AKhatskevich (4):
  Fix races related to object outdating
  Refactor reloadable fiber
  tests: separate bootstrap routine to a lua_libs
  Introduce storage reload evolution

 .travis.yml                                        |   2 +-
 rpm/prebuild.sh                                    |   2 +
 test/lua_libs/bootstrap.lua                        |  50 +++++
 test/lua_libs/git_util.lua                         |  51 +++++
 test/lua_libs/util.lua                             |  20 ++
 test/rebalancer/box_1_a.lua                        |  47 +---
 test/rebalancer/errinj.result                      |   2 +-
 test/rebalancer/errinj.test.lua                    |   2 +-
 test/rebalancer/rebalancer.result                  |   4 +-
 test/rebalancer/rebalancer.test.lua                |   4 +-
 test/rebalancer/rebalancer_lock_and_pin.result     |   2 +-
 test/rebalancer/rebalancer_lock_and_pin.test.lua   |   2 +-
 test/rebalancer/restart_during_rebalancing.result  |   2 +-
 .../rebalancer/restart_during_rebalancing.test.lua |   2 +-
 test/rebalancer/stress_add_remove_rs.result        |   2 +-
 test/rebalancer/stress_add_remove_rs.test.lua      |   2 +-
 .../rebalancer/stress_add_remove_several_rs.result |   2 +-
 .../stress_add_remove_several_rs.test.lua          |   2 +-
 test/rebalancer/suite.ini                          |   2 +-
 test/reload_evolution/storage.result               | 245 +++++++++++++++++++++
 test/reload_evolution/storage.test.lua             |  87 ++++++++
 test/reload_evolution/storage_1_a.lua              |  48 ++++
 test/reload_evolution/storage_1_b.lua              |   1 +
 test/reload_evolution/storage_2_a.lua              |   1 +
 test/reload_evolution/storage_2_b.lua              |   1 +
 test/reload_evolution/suite.ini                    |   6 +
 test/reload_evolution/test.lua                     |   9 +
 test/router/reload.result                          |   4 +-
 test/router/reload.test.lua                        |   4 +-
 test/storage/reload.result                         |   6 +-
 test/storage/reload.test.lua                       |   6 +-
 test/unit/garbage.result                           |   2 +-
 test/unit/garbage.test.lua                         |   2 +-
 test/unit/reload_evolution.result                  |  45 ++++
 test/unit/reload_evolution.test.lua                |  18 ++
 test/unit/util.result                              |  20 +-
 test/unit/util.test.lua                            |  12 +-
 vshard/replicaset.lua                              |  30 +--
 vshard/router/init.lua                             |  74 ++++---
 vshard/storage/init.lua                            |  33 ++-
 vshard/storage/reload_evolution.lua                |  58 +++++
 vshard/util.lua                                    |  59 ++---
 42 files changed, 798 insertions(+), 175 deletions(-)
 create mode 100644 test/lua_libs/bootstrap.lua
 create mode 100644 test/lua_libs/git_util.lua
 create mode 100644 test/reload_evolution/storage.result
 create mode 100644 test/reload_evolution/storage.test.lua
 create mode 100755 test/reload_evolution/storage_1_a.lua
 create mode 120000 test/reload_evolution/storage_1_b.lua
 create mode 120000 test/reload_evolution/storage_2_a.lua
 create mode 120000 test/reload_evolution/storage_2_b.lua
 create mode 100644 test/reload_evolution/suite.ini
 create mode 100644 test/reload_evolution/test.lua
 create mode 100644 test/unit/reload_evolution.result
 create mode 100644 test/unit/reload_evolution.test.lua
 create mode 100644 vshard/storage/reload_evolution.lua

-- 
2.14.1





More information about the Tarantool-patches mailing list