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 B65B525AE6 for ; Thu, 11 Jul 2019 04:22:30 -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 z1C7-iP7DrGA for ; Thu, 11 Jul 2019 04:22:30 -0400 (EDT) Received: from smtpng2.m.smailru.net (smtpng2.m.smailru.net [94.100.179.3]) (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 7508025AE5 for ; Thu, 11 Jul 2019 04:22:30 -0400 (EDT) From: imeevma@tarantool.org Subject: [tarantool-patches] [PATCH v3 0/4] sql: do not show IDs generated by trigger Date: Thu, 11 Jul 2019 11:22:26 +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: korablev@tarantool.org Cc: tarantool-patches@freelists.org Currently, if an INSERT was executed by a trigger during the execution of a statement, if there were any generated identifiers, they can be displayed as a result of the statement. This is incorrect, since we are not able to divide the IDs obtained into those that belong to the table mentioned in the statement and those that do not belong to this table. https://github.com/tarantool/tarantool/issues/4188 https://github.com/tarantool/tarantool/tree/imeevma/gh-4188-remove-additonal-generated-ids Changes in v2: 1) Patch was divided into 3 new patches. Changes in v3: 1) Removed tests in refactoring patch "sql: remove unnecessary AUTOINCREMENT ID generation". They shows nothing. 2) Changed the way to check that INSERT executed by trigger. 3) Fixed a bug with the display of generated AUTOINCREMENT identifiers, even if INSERT failed in the case of INSERT OR IGNORE. Mergen Imeev (4): sql: remove unnecessary AUTOINCREMENT ID generation sql: do not show IDs generated by trigger sql: remove VDBE from TXN sql: do not show generated IDs if INSERT failed src/box/sequence.c | 19 +++++--- src/box/sequence.h | 13 +++-- src/box/sql/insert.c | 27 ++++++++--- src/box/sql/sqlInt.h | 10 +++- src/box/sql/update.c | 2 +- src/box/sql/vdbe.c | 46 +++++++++++------- src/box/sql/vdbe.h | 3 +- src/box/sql/vdbeInt.h | 2 +- src/box/sql/vdbeaux.c | 10 ++-- src/box/txn.h | 17 ------- test/sql/iproto.result | 2 - test/sql/row-count.result | 26 ++++++++++ test/sql/row-count.test.lua | 7 +++ test/sql/triggers.result | 114 ++++++++++++++++++++++++++++++++++++++++++++ test/sql/triggers.test.lua | 24 ++++++++++ 15 files changed, 259 insertions(+), 63 deletions(-) -- 2.7.4