From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from localhost (localhost [127.0.0.1]) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTP id C0FCD247AC for ; Tue, 24 Jul 2018 07:58:09 -0400 (EDT) Received: from turing.freelists.org ([127.0.0.1]) by localhost (turing.freelists.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id S5gIOUUaBOSt for ; Tue, 24 Jul 2018 07:58:09 -0400 (EDT) Received: from smtp32.i.mail.ru (smtp32.i.mail.ru [94.100.177.92]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 7C0D92441E for ; Tue, 24 Jul 2018 07:58:09 -0400 (EDT) Received: from [185.6.245.156] (port=59848 helo=mimeev-ThinkPad-T460p.mail.msk) by smtp32.i.mail.ru with esmtpa (envelope-from ) id 1fhvx9-0006mA-CK for tarantool-patches@freelists.org; Tue, 24 Jul 2018 14:58:07 +0300 From: imeevma@tarantool.org Subject: [tarantool-patches] [PATCH v3 0/7] Expose ephemeral spaces into Lua Date: Tue, 24 Jul 2018 14:58:06 +0300 Message-Id: Sender: tarantool-patches-bounce@freelists.org Errors-to: tarantool-patches-bounce@freelists.org Reply-To: tarantool-patches@freelists.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-Id: tarantool-patches List-subscribe: List-owner: List-post: List-archive: To: tarantool-patches@freelists.org 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