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 5A83D2DAB2 for ; Wed, 15 May 2019 13:34:33 -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 KpVZ0xjeaxSV for ; Wed, 15 May 2019 13:34:33 -0400 (EDT) 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 turing.freelists.org (Avenir Technologies Mail Multiplex) with ESMTPS id 1C9D32A0EE for ; Wed, 15 May 2019 13:34:33 -0400 (EDT) From: Kirill Shcherbatov Subject: [tarantool-patches] [PATCH v1 0/3] box: local sql_flags for parser and vdbe Date: Wed, 15 May 2019 20:34:27 +0300 Message-Id: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 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, korablev@tarantool.org Cc: Kirill Shcherbatov The sql_flags is a parser parameter that describe how to parse the SQL request, but now this information is taken from the global user session object. When we need to run the parser with some other parameters, it is necessary to change global session object, which may lead to unpredictable consequences in general case. Introduced a new parser and vdbe field sql_flags is responsible for SQL parsing results. Also fixed bug #4219 ban sql functions coinciding with builtins. Branch: http://github.com/tarantool/tarantool/tree/kshch/gh-3691-sql-flags-in-parser Issue: https://github.com/tarantool/tarantool/issues/3961 Kirill Shcherbatov (3): sql: get rid of SQL_NullCallback flag sql: ban sql functions coinciding with builtins box: local sql_flags for parser and vdbe src/box/lua/lua_sql.c | 8 +- src/box/sql.c | 2 +- src/box/sql.h | 3 +- src/box/sql/callback.c | 174 +++++++++++++++------------------- src/box/sql/delete.c | 12 +-- src/box/sql/expr.c | 25 +++-- src/box/sql/fk_constraint.c | 7 +- src/box/sql/func.c | 33 +++---- src/box/sql/insert.c | 18 ++-- src/box/sql/legacy.c | 6 +- src/box/sql/main.c | 33 ++++--- src/box/sql/prepare.c | 5 +- src/box/sql/resolve.c | 7 +- src/box/sql/select.c | 24 ++--- src/box/sql/sqlInt.h | 32 ++++++- src/box/sql/tokenize.c | 7 +- src/box/sql/trigger.c | 13 +-- src/box/sql/update.c | 15 ++- src/box/sql/vdbe.c | 72 +++++++------- src/box/sql/vdbeInt.h | 2 + src/box/sql/vdbemem.c | 2 +- src/box/sql/where.c | 13 ++- test/sql-tap/lua_sql.test.lua | 11 ++- 23 files changed, 254 insertions(+), 270 deletions(-) -- 2.21.0