From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vladimir Davydov Subject: [PATCH v2 0/8] Allow to build indexes for vinyl spaces Date: Sun, 27 May 2018 22:05:48 +0300 Message-Id: To: kostja@tarantool.org Cc: tarantool-patches@freelists.org List-ID: This patch set implements the ability to build secondary indexes for non-empty vinyl spaces. For implementation details, see patch 8. https://github.com/tarantool/tarantool/issues/1653 https://github.com/tarantool/tarantool/commits/vy-allow-to-build-secondary-indexes Changes in v2: - Split the patch into logical parts. - Address comments by Konstantin and Vladislav (refactoring mostly). v1: https://www.freelists.org/post/tarantool-patches/PATCH-vinyl-allow-to-build-secondary-index-for-nonempty-space Vladimir Davydov (8): vinyl: allocate key parts in vy_recovery_do_create_lsm vinyl: update recovery context with records written during recovery vinyl: log new index before WAL write on DDL vinyl: bump mem version after committing statement vinyl: allow to commit statements to mem in arbitrary order vinyl: relax limitation imposed on run min/max lsn vinyl: factor out vy_check_is_unique_secondary vinyl: allow to build secondary index for non-empty space src/box/vinyl.c | 610 +++++++++++++++++++++++++++++------ src/box/vy_log.c | 216 +++++++++++-- src/box/vy_log.h | 51 ++- src/box/vy_lsm.c | 94 ++++-- src/box/vy_lsm.h | 4 +- src/box/vy_mem.c | 8 +- src/box/vy_quota.h | 10 + src/box/vy_scheduler.c | 31 +- src/box/vy_scheduler.h | 7 + test/box/alter.result | 501 ----------------------------- test/box/alter.test.lua | 159 --------- test/engine/ddl.result | 672 +++++++++++++++++++++++++++++++++++++++ test/engine/ddl.test.lua | 221 +++++++++++++ test/engine/truncate.result | 87 ----- test/engine/truncate.test.lua | 48 --- test/unit/vy_mem.c | 4 +- test/vinyl/ddl.result | 446 +++++++++++++++----------- test/vinyl/ddl.test.lua | 220 ++++++++----- test/vinyl/errinj.result | 256 +++++++++++++++ test/vinyl/errinj.test.lua | 115 +++++++ test/vinyl/errinj_gc.result | 78 ++++- test/vinyl/errinj_gc.test.lua | 38 ++- test/vinyl/errinj_vylog.result | 216 ++++++++----- test/vinyl/errinj_vylog.test.lua | 139 ++++---- test/vinyl/gh.result | 2 +- 25 files changed, 2858 insertions(+), 1375 deletions(-) -- 2.11.0