From: Oleg Babin via Tarantool-patches <tarantool-patches@dev.tarantool.org> To: Vladislav Shpilevoy <v.shpilevoy@tarantool.org>, tarantool-patches@dev.tarantool.org Subject: Re: [Tarantool-patches] [PATCH vshard 2/2] Drop periodic Lua GC explicit call Date: Fri, 28 Jan 2022 08:47:35 +0300 [thread overview] Message-ID: <bcf56f47-bb7a-805b-eb4f-5f3c8cb1a35c@tarantool.org> (raw) In-Reply-To: <8017c8b948a682b62c4d722879fb1a1b1b85f936.1643329358.git.v.shpilevoy@tarantool.org> Thanks for your patch. Consider also following diff diff --git a/vshard/CMakeLists.txt b/vshard/CMakeLists.txt index 2a15df5..2d9be25 100644 --- a/vshard/CMakeLists.txt +++ b/vshard/CMakeLists.txt @@ -7,5 +7,5 @@ add_subdirectory(router) # Install module install(FILES cfg.lua error.lua consts.lua hash.lua init.lua replicaset.lua - util.lua lua_gc.lua rlist.lua heap.lua registry.lua + util.lua rlist.lua heap.lua registry.lua DESTINATION ${TARANTOOL_INSTALL_LUADIR}/vshard) After it LGTM. On 28.01.2022 03:23, Vladislav Shpilevoy wrote: > It was introduced because somebody very long time ago complained > that otherwise router goes OOM and the person was sure it was due > to Lua GC working too rare/late. > > This of course makes little sense. Either Lua GC was never the > issue, or if it is - then it should be fixed in Lua implementation > in the core. In case anybody still needs that due to any reason, > he can start his own fiber making periodic collectgarbage(). This > has nothing to do with vshard and never had, really. > > The patch is done now in scope of general code cleanup from old > unnecessary stuff, like Tarantool < 1.10.0 support. > > @TarantoolBot document > Title: VShard cfg option collect_lua_garbage is deprecated > > It won't do anything now, only print a warning that it is > deprecated. > --- > test/multiple_routers/multiple_routers.result | 64 ---------- > .../multiple_routers.test.lua | 20 --- > test/router/garbage_collector.result | 116 ------------------ > test/router/garbage_collector.test.lua | 39 ------ > test/storage/garbage_collector.result | 62 ---------- > test/storage/garbage_collector.test.lua | 23 ---- > test/unit/config.result | 27 +--- > test/unit/config.test.lua | 13 +- > vshard/cfg.lua | 4 +- > vshard/consts.lua | 1 - > vshard/lua_gc.lua | 54 -------- > vshard/router/init.lua | 36 +----- > vshard/storage/init.lua | 8 +- > 13 files changed, 10 insertions(+), 457 deletions(-) > delete mode 100644 test/router/garbage_collector.result > delete mode 100644 test/router/garbage_collector.test.lua > delete mode 100644 vshard/lua_gc.lua > > diff --git a/test/multiple_routers/multiple_routers.result b/test/multiple_routers/multiple_routers.result > index b18c194..91b5d29 100644 > --- a/test/multiple_routers/multiple_routers.result > +++ b/test/multiple_routers/multiple_routers.result > @@ -212,70 +212,6 @@ routers[5]:call(1, 'read', 'do_select', {2}) > --- > - [[2, 2]] > ... > --- Check lua_gc counter. > -lua_gc = require('vshard.lua_gc') > ---- > -... > -vshard.router.internal.collect_lua_garbage_cnt == 0 > ---- > -- true > -... > -lua_gc.internal.bg_fiber == nil > ---- > -- true > -... > -configs.cfg_2.collect_lua_garbage = true > ---- > -... > -routers[5]:cfg(configs.cfg_2) > ---- > -... > -lua_gc.internal.bg_fiber ~= nil > ---- > -- true > -... > -routers[7]:cfg(configs.cfg_2) > ---- > -... > -lua_gc.internal.bg_fiber ~= nil > ---- > -- true > -... > -vshard.router.internal.collect_lua_garbage_cnt == 2 > ---- > -- true > -... > -package.loaded['vshard.router'] = nil > ---- > -... > -vshard.router = require('vshard.router') > ---- > -... > -vshard.router.internal.collect_lua_garbage_cnt == 2 > ---- > -- true > -... > -configs.cfg_2.collect_lua_garbage = nil > ---- > -... > -routers[5]:cfg(configs.cfg_2) > ---- > -... > -lua_gc.internal.bg_fiber ~= nil > ---- > -- true > -... > -routers[7]:cfg(configs.cfg_2) > ---- > -... > -vshard.router.internal.collect_lua_garbage_cnt == 0 > ---- > -- true > -... > -lua_gc.internal.bg_fiber == nil > ---- > -- true > -... > -- Self checker. > util.check_error(router_2.info) > --- > diff --git a/test/multiple_routers/multiple_routers.test.lua b/test/multiple_routers/multiple_routers.test.lua > index b5da5cf..c61f71d 100644 > --- a/test/multiple_routers/multiple_routers.test.lua > +++ b/test/multiple_routers/multiple_routers.test.lua > @@ -80,26 +80,6 @@ vshard.router.call(1, 'read', 'do_select', {1}) > router_2:call(1, 'read', 'do_select', {2}) > routers[5]:call(1, 'read', 'do_select', {2}) > > --- Check lua_gc counter. > -lua_gc = require('vshard.lua_gc') > -vshard.router.internal.collect_lua_garbage_cnt == 0 > -lua_gc.internal.bg_fiber == nil > -configs.cfg_2.collect_lua_garbage = true > -routers[5]:cfg(configs.cfg_2) > -lua_gc.internal.bg_fiber ~= nil > -routers[7]:cfg(configs.cfg_2) > -lua_gc.internal.bg_fiber ~= nil > -vshard.router.internal.collect_lua_garbage_cnt == 2 > -package.loaded['vshard.router'] = nil > -vshard.router = require('vshard.router') > -vshard.router.internal.collect_lua_garbage_cnt == 2 > -configs.cfg_2.collect_lua_garbage = nil > -routers[5]:cfg(configs.cfg_2) > -lua_gc.internal.bg_fiber ~= nil > -routers[7]:cfg(configs.cfg_2) > -vshard.router.internal.collect_lua_garbage_cnt == 0 > -lua_gc.internal.bg_fiber == nil > - > -- Self checker. > util.check_error(router_2.info) > > diff --git a/test/router/garbage_collector.result b/test/router/garbage_collector.result > deleted file mode 100644 > index 7780046..0000000 > --- a/test/router/garbage_collector.result > +++ /dev/null > @@ -1,116 +0,0 @@ > -test_run = require('test_run').new() > ---- > -... > -REPLICASET_1 = { 'storage_1_a', 'storage_1_b' } > ---- > -... > -REPLICASET_2 = { 'storage_2_a', 'storage_2_b' } > ---- > -... > -test_run:create_cluster(REPLICASET_1, 'router') > ---- > -... > -test_run:create_cluster(REPLICASET_2, 'router') > ---- > -... > -util = require('util') > ---- > -... > -util.wait_master(test_run, REPLICASET_1, 'storage_1_a') > ---- > -... > -util.wait_master(test_run, REPLICASET_2, 'storage_2_a') > ---- > -... > -test_run:cmd("create server router_1 with script='router/router_1.lua'") > ---- > -- true > -... > -test_run:cmd("start server router_1") > ---- > -- true > -... > --- > --- gh-77: garbage collection options and Lua garbage collection. > --- > -test_run:switch('router_1') > ---- > -- true > -... > -fiber = require('fiber') > ---- > -... > -lua_gc = require('vshard.lua_gc') > ---- > -... > -cfg.collect_lua_garbage = true > ---- > -... > -vshard.router.cfg(cfg) > ---- > -... > -lua_gc.internal.bg_fiber ~= nil > ---- > -- true > -... > --- Check that `collectgarbage()` was really called. > -a = setmetatable({}, {__mode = 'v'}) > ---- > -... > -a.k = {b = 100} > ---- > -... > -iterations = lua_gc.internal.iterations > ---- > -... > -lua_gc.internal.bg_fiber:wakeup() > ---- > -... > -while lua_gc.internal.iterations < iterations + 1 do fiber.sleep(0.01) end > ---- > -... > -a.k > ---- > -- null > -... > -lua_gc.internal.interval = 0.001 > ---- > -... > -cfg.collect_lua_garbage = false > ---- > -... > -vshard.router.cfg(cfg) > ---- > -... > -lua_gc.internal.bg_fiber == nil > ---- > -- true > -... > -iterations = lua_gc.internal.iterations > ---- > -... > -fiber.sleep(0.01) > ---- > -... > -iterations == lua_gc.internal.iterations > ---- > -- true > -... > -test_run:switch("default") > ---- > -- true > -... > -test_run:cmd("stop server router_1") > ---- > -- true > -... > -test_run:cmd("cleanup server router_1") > ---- > -- true > -... > -test_run:drop_cluster(REPLICASET_1) > ---- > -... > -test_run:drop_cluster(REPLICASET_2) > ---- > -... > diff --git a/test/router/garbage_collector.test.lua b/test/router/garbage_collector.test.lua > deleted file mode 100644 > index e8d0876..0000000 > --- a/test/router/garbage_collector.test.lua > +++ /dev/null > @@ -1,39 +0,0 @@ > -test_run = require('test_run').new() > -REPLICASET_1 = { 'storage_1_a', 'storage_1_b' } > -REPLICASET_2 = { 'storage_2_a', 'storage_2_b' } > -test_run:create_cluster(REPLICASET_1, 'router') > -test_run:create_cluster(REPLICASET_2, 'router') > -util = require('util') > -util.wait_master(test_run, REPLICASET_1, 'storage_1_a') > -util.wait_master(test_run, REPLICASET_2, 'storage_2_a') > -test_run:cmd("create server router_1 with script='router/router_1.lua'") > -test_run:cmd("start server router_1") > --- > --- gh-77: garbage collection options and Lua garbage collection. > --- > -test_run:switch('router_1') > -fiber = require('fiber') > -lua_gc = require('vshard.lua_gc') > -cfg.collect_lua_garbage = true > -vshard.router.cfg(cfg) > -lua_gc.internal.bg_fiber ~= nil > --- Check that `collectgarbage()` was really called. > -a = setmetatable({}, {__mode = 'v'}) > -a.k = {b = 100} > -iterations = lua_gc.internal.iterations > -lua_gc.internal.bg_fiber:wakeup() > -while lua_gc.internal.iterations < iterations + 1 do fiber.sleep(0.01) end > -a.k > -lua_gc.internal.interval = 0.001 > -cfg.collect_lua_garbage = false > -vshard.router.cfg(cfg) > -lua_gc.internal.bg_fiber == nil > -iterations = lua_gc.internal.iterations > -fiber.sleep(0.01) > -iterations == lua_gc.internal.iterations > - > -test_run:switch("default") > -test_run:cmd("stop server router_1") > -test_run:cmd("cleanup server router_1") > -test_run:drop_cluster(REPLICASET_1) > -test_run:drop_cluster(REPLICASET_2) > diff --git a/test/storage/garbage_collector.result b/test/storage/garbage_collector.result > index 08ce085..c0212ff 100644 > --- a/test/storage/garbage_collector.result > +++ b/test/storage/garbage_collector.result > @@ -111,68 +111,6 @@ test:select{} > - - [10, 1] > - [11, 2] > ... > --- > --- gh-77: garbage collection options and Lua garbage collection. > --- > -_ = test_run:switch('storage_1_a') > ---- > -... > -lua_gc = require('vshard.lua_gc') > ---- > -... > -cfg.collect_lua_garbage = true > ---- > -... > -vshard.storage.cfg(cfg, util.name_to_uuid.storage_1_a) > ---- > -... > -lua_gc.internal.bg_fiber ~= nil > ---- > -- true > -... > --- Check that `collectgarbage()` was really called. > -a = setmetatable({}, {__mode = 'v'}) > ---- > -... > -a.k = {b = 100} > ---- > -... > -iterations = lua_gc.internal.iterations > ---- > -... > -lua_gc.internal.bg_fiber:wakeup() > ---- > -... > -while lua_gc.internal.iterations < iterations + 1 do fiber.sleep(0.01) end > ---- > -... > -a.k > ---- > -- null > -... > -lua_gc.internal.interval = 0.001 > ---- > -... > -cfg.collect_lua_garbage = false > ---- > -... > -vshard.storage.cfg(cfg, util.name_to_uuid.storage_1_a) > ---- > -... > -lua_gc.internal.bg_fiber == nil > ---- > -- true > -... > -iterations = lua_gc.internal.iterations > ---- > -... > -fiber.sleep(0.01) > ---- > -... > -iterations == lua_gc.internal.iterations > ---- > -- true > -... > _ = test_run:switch('default') > --- > ... > diff --git a/test/storage/garbage_collector.test.lua b/test/storage/garbage_collector.test.lua > index 3704f11..a5aac53 100644 > --- a/test/storage/garbage_collector.test.lua > +++ b/test/storage/garbage_collector.test.lua > @@ -40,29 +40,6 @@ _ = test_run:switch('storage_1_b') > while box.space._bucket:get{3} ~= nil do fiber.sleep(0.1) end > test:select{} > > --- > --- gh-77: garbage collection options and Lua garbage collection. > --- > -_ = test_run:switch('storage_1_a') > -lua_gc = require('vshard.lua_gc') > -cfg.collect_lua_garbage = true > -vshard.storage.cfg(cfg, util.name_to_uuid.storage_1_a) > -lua_gc.internal.bg_fiber ~= nil > --- Check that `collectgarbage()` was really called. > -a = setmetatable({}, {__mode = 'v'}) > -a.k = {b = 100} > -iterations = lua_gc.internal.iterations > -lua_gc.internal.bg_fiber:wakeup() > -while lua_gc.internal.iterations < iterations + 1 do fiber.sleep(0.01) end > -a.k > -lua_gc.internal.interval = 0.001 > -cfg.collect_lua_garbage = false > -vshard.storage.cfg(cfg, util.name_to_uuid.storage_1_a) > -lua_gc.internal.bg_fiber == nil > -iterations = lua_gc.internal.iterations > -fiber.sleep(0.01) > -iterations == lua_gc.internal.iterations > - > _ = test_run:switch('default') > test_run:drop_cluster(REPLICASET_2) > test_run:drop_cluster(REPLICASET_1) > diff --git a/test/unit/config.result b/test/unit/config.result > index 676ee4d..3ddac10 100644 > --- a/test/unit/config.result > +++ b/test/unit/config.result > @@ -426,28 +426,6 @@ _ = lcfg.check(cfg) > --- > ... > -- > --- gh-77: garbage collection options. > --- > -cfg.collect_lua_garbage = 100 > ---- > -... > -check(cfg) > ---- > -- Garbage Lua collect necessity must be boolean > -... > -cfg.collect_lua_garbage = true > ---- > -... > -_ = lcfg.check(cfg) > ---- > -... > -cfg.collect_lua_garbage = false > ---- > -... > -_ = lcfg.check(cfg) > ---- > -... > --- > -- gh-84: sync before master demotion, and allow to configure > -- sync timeout. > -- > @@ -589,11 +567,14 @@ cfg.rebalancer_max_sending = nil > --- > ... > -- > --- Deprecated option does not break anything. > +-- Deprecated options do not break anything. > -- > cfg.collect_bucket_garbage_interval = 100 > --- > ... > +cfg.collect_lua_garbage = 100 > +--- > +... > _ = lcfg.check(cfg) > --- > ... > diff --git a/test/unit/config.test.lua b/test/unit/config.test.lua > index 4dfbd77..11d126b 100644 > --- a/test/unit/config.test.lua > +++ b/test/unit/config.test.lua > @@ -172,16 +172,6 @@ check(cfg) > cfg.shard_index = 'vbucket' > _ = lcfg.check(cfg) > > --- > --- gh-77: garbage collection options. > --- > -cfg.collect_lua_garbage = 100 > -check(cfg) > -cfg.collect_lua_garbage = true > -_ = lcfg.check(cfg) > -cfg.collect_lua_garbage = false > -_ = lcfg.check(cfg) > - > -- > -- gh-84: sync before master demotion, and allow to configure > -- sync timeout. > @@ -237,9 +227,10 @@ lcfg.check(cfg).rebalancer_max_sending > cfg.rebalancer_max_sending = nil > > -- > --- Deprecated option does not break anything. > +-- Deprecated options do not break anything. > -- > cfg.collect_bucket_garbage_interval = 100 > +cfg.collect_lua_garbage = 100 > _ = lcfg.check(cfg) > > -- > diff --git a/vshard/cfg.lua b/vshard/cfg.lua > index 1903967..fdb839f 100644 > --- a/vshard/cfg.lua > +++ b/vshard/cfg.lua > @@ -272,8 +272,8 @@ local cfg_template = { > reason = 'Has no effect anymore' > }, > collect_lua_garbage = { > - type = 'boolean', name = 'Garbage Lua collect necessity', > - is_optional = true, default = false > + name = 'Garbage Lua collect necessity', is_deprecated = true, > + reason = 'Has no effect anymore and never had much sense' > }, > sync_timeout = { > type = 'non-negative number', name = 'Sync timeout', is_optional = true, > diff --git a/vshard/consts.lua b/vshard/consts.lua > index 55c769c..de113eb 100644 > --- a/vshard/consts.lua > +++ b/vshard/consts.lua > @@ -41,7 +41,6 @@ return { > GC_BACKOFF_INTERVAL = 5, > RECOVERY_BACKOFF_INTERVAL = 5, > REPLICA_BACKOFF_INTERVAL = 5, > - COLLECT_LUA_GARBAGE_INTERVAL = 100; > DEFAULT_BUCKET_SEND_TIMEOUT = 10, > DEFAULT_BUCKET_RECV_TIMEOUT = 10, > > diff --git a/vshard/lua_gc.lua b/vshard/lua_gc.lua > deleted file mode 100644 > index c6c5cd3..0000000 > --- a/vshard/lua_gc.lua > +++ /dev/null > @@ -1,54 +0,0 @@ > --- > --- This module implements background lua GC fiber. > --- It's purpose is to make GC more aggressive. > --- > - > -local lfiber = require('fiber') > -local MODULE_INTERNALS = '__module_vshard_lua_gc' > - > -local M = rawget(_G, MODULE_INTERNALS) > -if not M then > - M = { > - -- Background fiber. > - bg_fiber = nil, > - -- GC interval in seconds. > - interval = nil, > - -- Main loop. > - -- Stored here to make the fiber reloadable. > - main_loop = nil, > - -- Number of `collectgarbage()` calls. > - iterations = 0, > - } > -end > - > -M.main_loop = function() > - lfiber.sleep(M.interval) > - collectgarbage() > - M.iterations = M.iterations + 1 > - return M.main_loop() > -end > - > -local function set_state(active, interval) > - assert(type(interval) == 'number') > - M.interval = interval > - if active and not M.bg_fiber then > - M.bg_fiber = lfiber.create(M.main_loop) > - M.bg_fiber:name('vshard.lua_gc') > - end > - if not active and M.bg_fiber then > - M.bg_fiber:cancel() > - M.bg_fiber = nil > - end > - if active then > - M.bg_fiber:wakeup() > - end > -end > - > -if not rawget(_G, MODULE_INTERNALS) then > - rawset(_G, MODULE_INTERNALS, M) > -end > - > -return { > - set_state = set_state, > - internal = M, > -} > diff --git a/vshard/router/init.lua b/vshard/router/init.lua > index ebeaac9..064bd5a 100644 > --- a/vshard/router/init.lua > +++ b/vshard/router/init.lua > @@ -8,8 +8,7 @@ local MODULE_INTERNALS = '__module_vshard_router' > if rawget(_G, MODULE_INTERNALS) then > local vshard_modules = { > 'vshard.consts', 'vshard.error', 'vshard.cfg', > - 'vshard.hash', 'vshard.replicaset', 'vshard.util', > - 'vshard.lua_gc', > + 'vshard.hash', 'vshard.replicaset', 'vshard.util' > } > for _, module in pairs(vshard_modules) do > package.loaded[module] = nil > @@ -21,7 +20,6 @@ local lcfg = require('vshard.cfg') > local lhash = require('vshard.hash') > local lreplicaset = require('vshard.replicaset') > local util = require('vshard.util') > -local lua_gc = require('vshard.lua_gc') > local seq_serializer = { __serialize = 'seq' } > > local M = rawget(_G, MODULE_INTERNALS) > @@ -43,8 +41,6 @@ if not M then > -- This counter is used to restart background fibers with > -- new reloaded code. > module_version = 0, > - -- Number of router which require collecting lua garbage. > - collect_lua_garbage_cnt = 0, > > ----------------------- Map-Reduce ----------------------- > -- Storage Ref ID. It must be unique for each ref request > @@ -79,8 +75,6 @@ local ROUTER_TEMPLATE = { > -- Bucket count stored on all replicasets. > total_bucket_count = 0, > known_bucket_count = 0, > - -- Boolean lua_gc state (create periodic gc task). > - collect_lua_garbage = nil, > -- Timeout after which a ping is considered to be > -- unacknowledged. Used by failover fiber to detect if a > -- node is down. > @@ -133,26 +127,6 @@ local function route_map_clear(router) > end > end > > --- > --- Increase/decrease number of routers which require to collect > --- a lua garbage and change state of the `lua_gc` fiber. > --- > - > -local function lua_gc_cnt_inc() > - M.collect_lua_garbage_cnt = M.collect_lua_garbage_cnt + 1 > - if M.collect_lua_garbage_cnt == 1 then > - lua_gc.set_state(true, consts.COLLECT_LUA_GARBAGE_INTERVAL) > - end > -end > - > -local function lua_gc_cnt_dec() > - M.collect_lua_garbage_cnt = M.collect_lua_garbage_cnt - 1 > - assert(M.collect_lua_garbage_cnt >= 0) > - if M.collect_lua_garbage_cnt == 0 then > - lua_gc.set_state(false, consts.COLLECT_LUA_GARBAGE_INTERVAL) > - end > -end > - > -------------------------------------------------------------------------------- > -- Discovery > -------------------------------------------------------------------------------- > @@ -1187,19 +1161,11 @@ local function router_cfg(router, cfg, is_reload) > for _, replicaset in pairs(new_replicasets) do > replicaset:connect_all() > end > - -- Change state of lua GC. > - if vshard_cfg.collect_lua_garbage and not router.collect_lua_garbage then > - lua_gc_cnt_inc() > - elseif not vshard_cfg.collect_lua_garbage and > - router.collect_lua_garbage then > - lua_gc_cnt_dec() > - end > lreplicaset.wait_masters_connect(new_replicasets) > lreplicaset.outdate_replicasets(router.replicasets, > vshard_cfg.connection_outdate_delay) > router.connection_outdate_delay = vshard_cfg.connection_outdate_delay > router.total_bucket_count = vshard_cfg.bucket_count > - router.collect_lua_garbage = vshard_cfg.collect_lua_garbage > router.current_cfg = cfg > router.replicasets = new_replicasets > router.failover_ping_timeout = vshard_cfg.failover_ping_timeout > diff --git a/vshard/storage/init.lua b/vshard/storage/init.lua > index 78103cf..1642609 100644 > --- a/vshard/storage/init.lua > +++ b/vshard/storage/init.lua > @@ -15,8 +15,7 @@ if rawget(_G, MODULE_INTERNALS) then > local vshard_modules = { > 'vshard.consts', 'vshard.error', 'vshard.cfg', > 'vshard.replicaset', 'vshard.util', > - 'vshard.storage.reload_evolution', > - 'vshard.lua_gc', 'vshard.rlist', 'vshard.registry', > + 'vshard.storage.reload_evolution', 'vshard.rlist', 'vshard.registry', > 'vshard.heap', 'vshard.storage.ref', 'vshard.storage.sched', > } > for _, module in pairs(vshard_modules) do > @@ -29,7 +28,6 @@ local lerror = require('vshard.error') > local lcfg = require('vshard.cfg') > local lreplicaset = require('vshard.replicaset') > local util = require('vshard.util') > -local lua_gc = require('vshard.lua_gc') > local lregistry = require('vshard.registry') > local lref = require('vshard.storage.ref') > local lsched = require('vshard.storage.sched') > @@ -151,8 +149,6 @@ if not M then > ------------------- Garbage collection ------------------- > -- Fiber to remove garbage buckets data. > collect_bucket_garbage_fiber = nil, > - -- Boolean lua_gc state (create periodic gc task). > - collect_lua_garbage = nil, > > -------------------- Bucket recovery --------------------- > recovery_fiber = nil, > @@ -2746,7 +2742,6 @@ local function storage_cfg(cfg, this_replica_uuid, is_reload) > vshard_cfg.rebalancer_disbalance_threshold > M.rebalancer_receiving_quota = vshard_cfg.rebalancer_max_receiving > M.shard_index = vshard_cfg.shard_index > - M.collect_lua_garbage = vshard_cfg.collect_lua_garbage > M.rebalancer_worker_count = vshard_cfg.rebalancer_max_sending > M.current_cfg = cfg > > @@ -2773,7 +2768,6 @@ local function storage_cfg(cfg, this_replica_uuid, is_reload) > M.rebalancer_fiber:cancel() > M.rebalancer_fiber = nil > end > - lua_gc.set_state(M.collect_lua_garbage, consts.COLLECT_LUA_GARBAGE_INTERVAL) > M.is_configured = true > -- Destroy connections, not used in a new configuration. > collectgarbage()
next prev parent reply other threads:[~2022-01-28 5:47 UTC|newest] Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top 2022-01-28 0:23 [Tarantool-patches] [PATCH vshard 0/2] Deprecations Vladislav Shpilevoy via Tarantool-patches 2022-01-28 0:23 ` [Tarantool-patches] [PATCH vshard 1/2] Drop Tarantool < 1.10.1 support Vladislav Shpilevoy via Tarantool-patches 2022-01-28 5:47 ` Oleg Babin via Tarantool-patches 2022-01-28 0:23 ` [Tarantool-patches] [PATCH vshard 2/2] Drop periodic Lua GC explicit call Vladislav Shpilevoy via Tarantool-patches 2022-01-28 5:47 ` Oleg Babin via Tarantool-patches [this message] 2022-01-28 22:19 ` Vladislav Shpilevoy via Tarantool-patches
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=bcf56f47-bb7a-805b-eb4f-5f3c8cb1a35c@tarantool.org \ --to=tarantool-patches@dev.tarantool.org \ --cc=olegrok@tarantool.org \ --cc=v.shpilevoy@tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH vshard 2/2] Drop periodic Lua GC explicit 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