]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Increase the default upper bound on the number of parameters in a single
authordrh <drh@noemail.net>
Wed, 12 Feb 2020 20:50:20 +0000 (20:50 +0000)
committerdrh <drh@noemail.net>
Wed, 12 Feb 2020 20:50:20 +0000 (20:50 +0000)
SQL statement to 32766 (from 999).

FossilOrigin-Name: 2def75693a8ae002375aff80db0e6c970c75f75e8b6ba64f2c518712badb0ae8

manifest
manifest.uuid
src/sqlite.h.in
src/sqliteInt.h
src/sqliteLimit.h

index c16742ddf2501e30c3843f1ff1cd5736c880cb59..d22800fa592f2af23044aab41dbd4452079265e1 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C When\sdetermining\swhether\san\s==\sor\sIS\sconstraint\sin\sa\sWHERE\sclause\smakes\san\sORDER\sBY\sterm\sredundant,\sconsider\sthe\scollation\ssequence\sused\sby\sthe\s==\sor\sIS\scomparison,\snot\sthe\scollation\ssequence\sof\sthe\scomparison\sexpression\sitself.\sPossible\sfix\sfor\s[fb8c538a8f].
-D 2020-02-12T11:57:35.462
+C Increase\sthe\sdefault\supper\sbound\son\sthe\snumber\sof\sparameters\sin\sa\ssingle\nSQL\sstatement\sto\s32766\s(from\s999).
+D 2020-02-12T20:50:20.663
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -533,11 +533,11 @@ F src/resolve.c f0781c9e180028b279bc4ff079ad54f4727223d470c8d2343643fcaf79b67740
 F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93
 F src/select.c 28defa337bd913e4d1c6430016e0669bae42778ebe94dbdd855d12de073aa8da
 F src/shell.c.in c2e20c43a44fb5588a6c27ce60589538fbf4794fd7686f5b2598eca22eaae1fa
-F src/sqlite.h.in 572ea78b08ee90529d7588cea966c350afbf9624fdf133378edb346a233c6625
+F src/sqlite.h.in 0d9ef312509cb7c8445f4dc25fedfe103c147668a78a36a607a1064f1e0612a4
 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
 F src/sqlite3ext.h 27951f294f29cd875c6027f2707d644ef99f469bd97514568b5a8581a114db8c
-F src/sqliteInt.h ce2038197482723e6da107447d95e4d3a1afcfd630c955b6abef5dc9ff597567
-F src/sqliteLimit.h 1513bfb7b20378aa0041e7022d04acb73525de35b80b252f1b83fedb4de6a76b
+F src/sqliteInt.h f5011c0f42a7f2d943ebc13819efb41f48c7730e5ad0111a52340e71c08d7383
+F src/sqliteLimit.h 95cb8479ca459496d9c1c6a9f76b38aee12203a56ce1092fe13e50ae2454c032
 F src/status.c 9ff2210207c6c3b4d9631a8241a7d45ab1b26a0e9c84cb07a9b5ce2de9a3b278
 F src/table.c b46ad567748f24a326d9de40e5b9659f96ffff34
 F src/tclsqlite.c d0aa320416efe88c4dbb0156ed6c494f2f9958871a940e46984ee57b3e7fcc50
@@ -1858,7 +1858,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 7d8dcfb95cea732e7588e7505bf80a171dd2e371b164c9435c6ac286060df6df
-R 59c1d18e534e5edddd3bf258cd0125ab
-U dan
-Z c51e7fa10130f64133da39d0e8b36324
+P 16aed5d0c63dcdc2054dbb8a4b6b992476640433bf81e19301e6db5a3fc82633
+R 609d391b7d0a11e157e71c995c0e5807
+U drh
+Z 0b06c4e19232243f80d66b8f3a5aacb0
index 59f56c0a20df9b70643b465cf25932697fe03869..54cdee59f352c0edd6b9cc40f56966e502439619 100644 (file)
@@ -1 +1 @@
-16aed5d0c63dcdc2054dbb8a4b6b992476640433bf81e19301e6db5a3fc82633
\ No newline at end of file
+2def75693a8ae002375aff80db0e6c970c75f75e8b6ba64f2c518712badb0ae8
\ No newline at end of file
index 367242bf272c504e198226189ed4507017bcf596..0537ab69f1b32d18eee994b4f34695667d4e1b84 100644 (file)
@@ -4199,7 +4199,7 @@ typedef struct sqlite3_context sqlite3_context;
 ** [sqlite3_bind_parameter_index()] API if desired.  ^The index
 ** for "?NNN" parameters is the value of NNN.
 ** ^The NNN value must be between 1 and the [sqlite3_limit()]
-** parameter [SQLITE_LIMIT_VARIABLE_NUMBER] (default value: 999).
+** parameter [SQLITE_LIMIT_VARIABLE_NUMBER] (default value: 32766).
 **
 ** ^The third argument is the value to bind to the parameter.
 ** ^If the third parameter to sqlite3_bind_text() or sqlite3_bind_text16()
index 76b37cb6951ed93b038bd2272298abd407869da2..4040f01a49d344605841dd9d32b00e68969741e0 100644 (file)
@@ -2512,10 +2512,10 @@ struct AggInfo {
 ** it uses less memory in the Expr object, which is a big memory user
 ** in systems with lots of prepared statements.  And few applications
 ** need more than about 10 or 20 variables.  But some extreme users want
-** to have prepared statements with over 32767 variables, and for them
+** to have prepared statements with over 32766 variables, and for them
 ** the option is available (at compile-time).
 */
-#if SQLITE_MAX_VARIABLE_NUMBER<=32767
+#if SQLITE_MAX_VARIABLE_NUMBER<32767
 typedef i16 ynVar;
 #else
 typedef int ynVar;
index 28e7a41cc3e1f5e888566b4dfb43775dded36ccc..a7302575c5b7fc1ead3aa55807e2e8037ba531ed 100644 (file)
 
 /*
 ** The maximum value of a ?nnn wildcard that the parser will accept.
+** If the value exceeds 32767 then extra space is required for the Expr
+** structure.  But otherwise, we believe that the number can be as large
+** as a signed 32-bit integer can hold.
 */
 #ifndef SQLITE_MAX_VARIABLE_NUMBER
-# define SQLITE_MAX_VARIABLE_NUMBER 999
+# define SQLITE_MAX_VARIABLE_NUMBER 32766
 #endif
 
 /* Maximum page size.  The upper bound on this value is 65536.  This a limit