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 834AF4696C4 for ; Mon, 30 Dec 2019 13:19:32 +0300 (MSK) From: imeevma@tarantool.org Date: Mon, 30 Dec 2019 13:19:31 +0300 Message-Id: <15aa12f7ba47a3d4b11bf0c82a4e2e21fc413f10.1577701113.git.imeevma@gmail.com> In-Reply-To: References: Subject: [Tarantool-patches] [PATCH v5 3/5] sql: remove PRAGMA "sql_compound_select_limit" List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: korablev@tarantool.org Cc: tarantool-patches@dev.tarantool.org Pragma sql_compound_select_limit was added in commit b2afe208 ("sql: decrease SELECT_COMPOUND_LIMIT threshold"). However, there is no need to make this parameter mutable. We also plan to rework SELECT (#3700), so this limit will be removed in future. Part of #4511 --- src/box/sql/pragma.c | 11 --------- src/box/sql/pragma.h | 63 ++++++++++++++++++++++---------------------------- test/sql-tap/suite.ini | 1 + 3 files changed, 28 insertions(+), 47 deletions(-) diff --git a/src/box/sql/pragma.c b/src/box/sql/pragma.c index 00ecde0..a8353ba 100644 --- a/src/box/sql/pragma.c +++ b/src/box/sql/pragma.c @@ -586,17 +586,6 @@ sqlPragma(Parse * pParse, Token * pId, /* First part of [schema.]id field */ break; } - case PragTyp_COMPOUND_SELECT_LIMIT: { - if (zRight != NULL) { - sql_limit(db, SQL_LIMIT_COMPOUND_SELECT, - sqlAtoi(zRight)); - } - int retval = - sql_limit(db, SQL_LIMIT_COMPOUND_SELECT, -1); - returnSingleInt(v, retval); - break; - } - default: unreachable(); } /* End of the PRAGMA switch */ diff --git a/src/box/sql/pragma.h b/src/box/sql/pragma.h index cf235a0..6c9aa8d 100644 --- a/src/box/sql/pragma.h +++ b/src/box/sql/pragma.h @@ -13,7 +13,6 @@ #define PragTyp_STATS 15 #define PragTyp_TABLE_INFO 17 #define PragTyp_DEFAULT_ENGINE 25 -#define PragTyp_COMPOUND_SELECT_LIMIT 26 /* Property flags associated with various pragma. */ #define PragFlg_NeedSchema 0x01 /* Force schema load before running */ @@ -111,36 +110,33 @@ static const char *const pragCName[] = { /* Used by: select_trace */ /* 68 */ "select_trace", /* 69 */ "integer", - /* Used by: sql_compound_select_limit */ - /* 70 */ "sql_compound_select_limit", - /* 71 */ "integer", /* Used by: sql_default_engine */ - /* 72 */ "sql_default_engine", - /* 73 */ "text", + /* 70 */ "sql_default_engine", + /* 71 */ "text", /* Used by: sql_trace */ - /* 74 */ "sql_trace", - /* 75 */ "integer", + /* 72 */ "sql_trace", + /* 73 */ "integer", /* Used by: vdbe_addoptrace */ - /* 76 */ "vdbe_addoptrace", - /* 77 */ "integer", + /* 74 */ "vdbe_addoptrace", + /* 75 */ "integer", /* Used by: vdbe_debug */ - /* 78 */ "vdbe_debug", - /* 79 */ "integer", + /* 76 */ "vdbe_debug", + /* 77 */ "integer", /* Used by: vdbe_eqp */ - /* 80 */ "vdbe_eqp", - /* 81 */ "integer", + /* 78 */ "vdbe_eqp", + /* 79 */ "integer", /* Used by: vdbe_listing */ - /* 82 */ "vdbe_listing", - /* 83 */ "integer", + /* 80 */ "vdbe_listing", + /* 81 */ "integer", /* Used by: vdbe_trace */ - /* 84 */ "vdbe_trace", - /* 85 */ "integer", + /* 82 */ "vdbe_trace", + /* 83 */ "integer", /* Used by: where_trace */ - /* 86 */ "where_trace", - /* 87 */ "integer", + /* 84 */ "where_trace", + /* 85 */ "integer", /* Used by: full_metadata */ - /* 88 */ "full_metadata", - /* 89 */ "integer", + /* 86 */ "full_metadata", + /* 87 */ "integer", }; /* Definitions of all built-in pragmas */ @@ -181,7 +177,7 @@ static const PragmaName aPragmaName[] = { { /* zName: */ "full_metadata", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 88, 1, + /* ColNames: */ 86, 1, /* iArg: */ SQL_FullMetadata}, { /* zName: */ "index_info", /* ePragTyp: */ PragTyp_INDEX_INFO, @@ -219,21 +215,16 @@ static const PragmaName aPragmaName[] = { /* ColNames: */ 68, 1, /* iArg: */ SQL_SelectTrace}, #endif - { /* zName: */ "sql_compound_select_limit", - /* ePragTyp: */ PragTyp_COMPOUND_SELECT_LIMIT, - /* ePragFlg: */ PragFlg_Result0, - /* ColNames: */ 70, 1, - /* iArg: */ 0}, { /* zName: */ "sql_default_engine", /* ePragTyp: */ PragTyp_DEFAULT_ENGINE, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 72, 1, + /* ColNames: */ 70, 1, /* iArg: */ 0}, #if defined(SQL_DEBUG) { /* zName: */ "sql_trace", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 74, 1, + /* ColNames: */ 72, 1, /* iArg: */ SQL_SqlTrace}, #endif { /* zName: */ "stats", @@ -252,33 +243,33 @@ static const PragmaName aPragmaName[] = { { /* zName: */ "vdbe_addoptrace", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 76, 1, + /* ColNames: */ 74, 1, /* iArg: */ SQL_VdbeAddopTrace}, { /* zName: */ "vdbe_debug", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 78, 1, + /* ColNames: */ 76, 1, /* iArg: */ SQL_SqlTrace | SQL_VdbeListing | SQL_VdbeTrace}, { /* zName: */ "vdbe_eqp", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 80, 1, + /* ColNames: */ 78, 1, /* iArg: */ SQL_VdbeEQP}, { /* zName: */ "vdbe_listing", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 82, 1, + /* ColNames: */ 80, 1, /* iArg: */ SQL_VdbeListing}, { /* zName: */ "vdbe_trace", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 84, 1, + /* ColNames: */ 82, 1, /* iArg: */ SQL_VdbeTrace}, { /* zName: */ "where_trace", /* ePragTyp: */ PragTyp_FLAG, /* ePragFlg: */ PragFlg_Result0 | PragFlg_NoColumns1, - /* ColNames: */ 86, 1, + /* ColNames: */ 84, 1, /* iArg: */ SQL_WhereTrace}, #endif }; diff --git a/test/sql-tap/suite.ini b/test/sql-tap/suite.ini index 8f3c3ea..2e8411d 100644 --- a/test/sql-tap/suite.ini +++ b/test/sql-tap/suite.ini @@ -21,6 +21,7 @@ disabled = selectA.test.lua ; analyzeE.test.lua ; analyzeF.test.lua ; gh-3350-skip-scan.test.lua ; + gh2548-select-compound-limit.test.lua ; lua_libs = lua/sqltester.lua ../sql/lua/sql_tokenizer.lua ../box/lua/identifier.lua is_parallel = True -- 2.7.4