[server 0/4] space:before_replace trigger

Vladimir Davydov vdavydov.dev at gmail.com
Tue Jan 23 19:28:54 MSK 2018


This patch set is based on gh-3020-fix-on-replace-rollback.

Issue: https://github.com/tarantool/tarantool/issues/2993
Branch: https://github.com/tarantool/tarantool/tree/gh-2933-before-trigger

Vladimir Davydov (4):
  space: introduce space_execute_dml helper
  Move helpers for updating request from space.c to request.c
  iproto: add IPROTO_NOP request type
  Introduce BEFORE trigger

 src/box/CMakeLists.txt                   |   1 +
 src/box/alter.cc                         |   1 +
 src/box/box.cc                           |  22 +-
 src/box/errcode.h                        |   2 +-
 src/box/iproto.cc                        |   3 +-
 src/box/iproto_constants.c               |   5 +-
 src/box/iproto_constants.h               |  11 +-
 src/box/lua/sequence.c                   |   2 +-
 src/box/lua/session.c                    |   8 +-
 src/box/lua/space.cc                     |  56 ++++-
 src/box/memtx_space.c                    |  20 +-
 src/box/request.c                        | 365 +++++++++++++++++++++++++++++++
 src/box/request.h                        |  82 +++++++
 src/box/space.c                          | 216 +++++-------------
 src/box/space.h                          |  59 +----
 src/box/tuple.c                          |   6 +-
 src/box/tuple.h                          |   6 +
 src/lua/trigger.c                        |  18 +-
 src/lua/trigger.h                        |  15 +-
 test/box/before_replace.result           | 350 +++++++++++++++++++++++++++++
 test/box/before_replace.test.lua         | 113 ++++++++++
 test/box/misc.result                     |  57 ++---
 test/replication/before_replace.result   | 168 ++++++++++++++
 test/replication/before_replace.test.lua |  63 ++++++
 test/replication/suite.ini               |   2 +-
 25 files changed, 1362 insertions(+), 289 deletions(-)
 create mode 100644 src/box/request.c
 create mode 100644 src/box/request.h
 create mode 100644 test/box/before_replace.result
 create mode 100644 test/box/before_replace.test.lua
 create mode 100644 test/replication/before_replace.result
 create mode 100644 test/replication/before_replace.test.lua

-- 
2.11.0




More information about the Tarantool-patches mailing list