From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vladimir Davydov Subject: [PATCH 0/2] vinyl: add knob for forcing major compaction Date: Fri, 18 May 2018 19:21:32 +0300 Message-Id: To: kostja@tarantool.org Cc: tarantool-patches@freelists.org List-ID: This patch adds a new Lua method index.compact(). If called on a vinyl index, this method triggers major compaction. For other kinds of indexes, it is a no-op. https://github.com/tarantool/tarantool/issues/3139 https://github.com/tarantool/tarantool/commits/gh-3139-vy-allow-to-force-compaction Vladimir Davydov (2): index: add compact method vinyl: implement index compact method src/box/index.cc | 19 +++++++- src/box/index.h | 23 +++++++++ src/box/lua/index.c | 15 ++++++ src/box/lua/schema.lua | 4 ++ src/box/memtx_bitset.c | 1 + src/box/memtx_hash.c | 1 + src/box/memtx_rtree.c | 1 + src/box/memtx_tree.c | 1 + src/box/sysview_index.c | 1 + src/box/vinyl.c | 9 ++++ src/box/vy_lsm.c | 13 +++++ src/box/vy_lsm.h | 6 +++ src/box/vy_range.c | 23 +++++++++ src/box/vy_range.h | 12 +++++ src/box/vy_scheduler.c | 9 ++++ src/box/vy_scheduler.h | 7 +++ test/vinyl/compact.result | 114 +++++++++++++++++++++++++++++++++++++++++++- test/vinyl/compact.test.lua | 58 +++++++++++++++++++++- 18 files changed, 312 insertions(+), 5 deletions(-) -- 2.11.0