From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: From: Vladimir Davydov Subject: [PATCH 00/10] Prepare box/alter.cc for transactional DDL Date: Wed, 3 Jul 2019 22:30:02 +0300 Message-Id: To: kostja@tarantool.org Cc: tarantool-patches@freelists.org List-ID: A set of pretty straightforward patches that prepare system space triggers for transactional DDL, namely: - Make sure that in-memory schema updates are in sync with data updates, i.e. changes to the schema are done on replace, not on commit. Add tests whenever possible. - Removes txn_last_stmt from on commit/rollback, because it won't be available once there may be more than one DDL statement in a transaction. - Fixes some inconsistencies in sequence object rollback. https://github.com/tarantool/tarantool/issues/4083 https://github.com/tarantool/tarantool/commits/dv/prepare-alter-for-transactional-ddl Vladimir Davydov (10): ddl: unreference view on space drop synchronously ddl: synchronize user cache with actual data state ddl: synchronize func cache with actual data state ddl: synchronize sequence cache with actual data state ddl: fix _space_sequence rollback ddl: restore sequence value if drop is rolled back ddl: don't use txn_last_stmt on _collation commit/rollback ddl: don't use txn_last_stmt on _trigger commit/rollback ddl: don't use txn_last_stmt on _ck_constraint commit/rollback ddl: don't use txn_last_stmt on _cluster commit/rollback src/box/alter.cc | 669 ++++++++++++++++++++++++++------------------ src/box/lua/load_cfg.lua | 1 - src/box/lua/schema.lua | 48 +--- src/box/lua/sequence.c | 110 +++++++- src/box/schema.cc | 39 +-- src/box/schema.h | 8 +- src/box/sequence.c | 21 ++ src/box/sequence.h | 27 ++ test/box/function1.result | 34 +++ test/box/function1.test.lua | 13 + test/box/sequence.result | 117 ++++++++ test/box/sequence.test.lua | 44 +++ 12 files changed, 776 insertions(+), 355 deletions(-) -- 2.11.0