From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpng3.m.smailru.net (smtpng3.m.smailru.net [94.100.177.149]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id 4B059469719 for ; Sat, 29 Feb 2020 15:46:49 +0300 (MSK) From: Roman Khabibov Date: Sat, 29 Feb 2020 15:46:43 +0300 Message-Id: <20200229124645.67971-1-roman.habibov@tarantool.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [Tarantool-patches] [PATCH v2 0/3] Add ability to drop constraints List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: v.shpilevoy@tarantool.org Cc: tarantool-patches@dev.tarantool.org @ChangeLog - Add function space_index_by_name(). - Add ability to spacify searching index in OP_SDelete. - Add function vdbe_emit_index_drop() to drop index by name. - Remove box_index_by_name() from build.c and pragma.c. - Rewrite function sql_drop_foreign_key() to sql_drop_constraint(). - Add ability to drop all the types of constraints. - Modify "no such constrait" error message. Hello, everybody! As Nikita requested, I performed the patch to remove box_index_by_name() from build.c and pragma.c, but what about analyze.c? Still had to add space_index_by_name() to use in pragma.c, beacuse struct index is required. Roman Khabibov (3): sql: improve "no such constraint" error message sql: don't select from _index during parsing sql: support constraint drop src/box/constraint_id.h | 1 + src/box/errcode.h | 2 +- src/box/space.h | 15 ++++ src/box/sql/alter.c | 2 +- src/box/sql/build.c | 143 ++++++++++++++++++++++------------- src/box/sql/parse.y | 4 +- src/box/sql/parse_def.h | 11 +-- src/box/sql/pragma.c | 8 +- src/box/sql/sqlInt.h | 7 +- src/box/sql/vdbe.c | 10 ++- test/sql-tap/alter2.test.lua | 2 +- test/sql/checks.result | 2 +- test/sql/constraint.result | 81 ++++++++++++++++++++ test/sql/constraint.test.lua | 28 +++++++ 14 files changed, 240 insertions(+), 76 deletions(-) -- 2.21.0 (Apple Git-122)