[tarantool-patches] [PATCH v3 0/7] Expose ephemeral spaces into Lua

imeevma at tarantool.org imeevma at tarantool.org
Tue Jul 24 14:58:06 MSK 2018


These patches allow to use ephemeral spaces in Lua. Ephemeral spaces are special
spaces that in most cases work in the same way as usual spaces, but they do not
touch transactions and are local to one Lua session. The are deleted by GC when
there is no references to them. They can be created and deleted but cannot be
altered. Till now they were used to process some sql queries.

Branch: https://github.com/tarantool/tarantool/compare/imeevma/gh-3375-lua-expose-ephemeral-spaces
Issue: https://github.com/tarantool/tarantool/issues/3375

Mergen Imeev (7):
  box: add space address to index_replace
  box: move checks for key findability from space_vtab
  box: create new methods for ephemeral spaces
  box: move some decode functions from alter.cc
  box: ephemeral space creation and deletion in Lua
  box: primary index for ephemeral spaces
  box: methods for ephemeral space and its index

 src/box/alter.cc                  |  256 +--------
 src/box/box.cc                    |  301 ++++++++---
 src/box/box.h                     |  115 ++++
 src/box/index.cc                  |  174 +++++-
 src/box/index.h                   |  167 +++++-
 src/box/index_def.c               |  117 +++++
 src/box/index_def.h               |   26 +
 src/box/lua/index.c               |  422 ++++++++++++++-
 src/box/lua/misc.cc               |   29 +-
 src/box/lua/misc.h                |   21 +
 src/box/lua/schema.lua            |  406 ++++++++++++--
 src/box/lua/space.cc              |  281 ++++++++--
 src/box/memtx_bitset.c            |    7 +-
 src/box/memtx_engine.c            |    6 +-
 src/box/memtx_hash.c              |   13 +-
 src/box/memtx_rtree.c             |    7 +-
 src/box/memtx_space.c             |  412 ++++++++++-----
 src/box/memtx_tree.c              |   17 +-
 src/box/space.h                   |   17 -
 src/box/space_def.c               |  155 ++++++
 src/box/space_def.h               |   18 +
 src/box/sql.c                     |   33 +-
 src/box/sysview.c                 |    2 -
 src/box/vinyl.c                   |   42 --
 test/box/ephemeral_space.result   | 1047 +++++++++++++++++++++++++++++++++++++
 test/box/ephemeral_space.test.lua |  331 ++++++++++++
 test/engine/iterator.result       |    2 +-
 27 files changed, 3800 insertions(+), 624 deletions(-)
 create mode 100644 test/box/ephemeral_space.result
 create mode 100644 test/box/ephemeral_space.test.lua

-- 
2.7.4





More information about the Tarantool-patches mailing list