Tarantool development patches archive
 help / color / mirror / Atom feed
From: Vladimir Davydov <vdavydov.dev@gmail.com>
To: kostja@tarantool.org
Cc: tarantool-patches@freelists.org
Subject: [PATCH v2 0/8] Allow to build indexes for vinyl spaces
Date: Sun, 27 May 2018 22:05:48 +0300	[thread overview]
Message-ID: <cover.1527446023.git.vdavydov.dev@gmail.com> (raw)

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

             reply	other threads:[~2018-05-27 19:05 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-27 19:05 Vladimir Davydov [this message]
2018-05-27 19:05 ` [PATCH v2 1/8] vinyl: allocate key parts in vy_recovery_do_create_lsm Vladimir Davydov
2018-05-30 11:51   ` Konstantin Osipov
2018-05-27 19:05 ` [PATCH v2 2/8] vinyl: update recovery context with records written during recovery Vladimir Davydov
2018-05-30 11:51   ` Konstantin Osipov
2018-05-27 19:05 ` [PATCH v2 3/8] vinyl: log new index before WAL write on DDL Vladimir Davydov
2018-06-06 18:01   ` Konstantin Osipov
2018-05-27 19:05 ` [PATCH v2 4/8] vinyl: bump mem version after committing statement Vladimir Davydov
2018-06-07  5:41   ` Konstantin Osipov
2018-05-27 19:05 ` [PATCH v2 5/8] vinyl: allow to commit statements to mem in arbitrary order Vladimir Davydov
2018-06-07  5:41   ` Konstantin Osipov
2018-05-27 19:05 ` [PATCH v2 6/8] vinyl: relax limitation imposed on run min/max lsn Vladimir Davydov
2018-05-27 19:05 ` [PATCH v2 7/8] vinyl: factor out vy_check_is_unique_secondary Vladimir Davydov
2018-05-27 19:05 ` [PATCH v2 8/8] vinyl: allow to build secondary index for non-empty space Vladimir Davydov

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.1527446023.git.vdavydov.dev@gmail.com \
    --to=vdavydov.dev@gmail.com \
    --cc=kostja@tarantool.org \
    --cc=tarantool-patches@freelists.org \
    --subject='Re: [PATCH v2 0/8] Allow to build indexes for vinyl spaces' \
    /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