-C Improvements\sto\sthe\sscope\sof\svalueFromFunction().
-D 2024-09-18T18:04:30.307
+C Fix\sthe\sprocessing\sof\simplied\sLIMIT\sclauses\swhen\sflattening\sa\scompound\nquery.
+D 2025-12-09T19:15:52.462
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
F src/random.c 80f5d666f23feb3e6665a6ce04c7197212a88384
F src/resolve.c 5153c9fb3fa402cfdef7dc5a50779ce05f40632098b6bfb7d861bff4bfe15dee
F src/rowset.c d977b011993aaea002cab3e0bb2ce50cf346000dff94e944d547b989f4b1fe93
-F src/select.c cd4b49d6d8d8898bb26ed1d46537d67978b2e25a40baa928229b382344b62452
+F src/select.c 6041a0e9c238ba5f504373f8def86dabcb5c1c182da03c6089a4a92c01f7b36b
F src/shell.c.in 7081fe81793df713d0c0fc5f82a908b84c7c30c43a8df67d6188bfb373332c91
F src/sqlite.h.in 59f5e145b8d7a915ca29c6bf4a1f00e3112c1605c9ac5c627c45060110332ba2
F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
F test/like.test 11cfd7d4ef8625389df9efc46735ff0b0b41d5e62047ef0f3bc24c380d28a7a6
F test/like2.test 3b2ee13149ba4a8a60b59756f4e5d345573852da
F test/like3.test 0ce2630e39e32e42ce02d171f0a315189ca71fec37c5ddfb0191eecc3fe9d4da
-F test/limit.test 0c99a27a87b14c646a9d583c7c89fd06c352663e
+F test/limit.test 350f5d03c29e7dff9a2cde016f84f8d368d40bcd02fa2b2a52fa10c4bf3cbfaf
F test/limit2.test 9409b033284642a859fafc95f29a5a6a557bd57c1f0d7c3f554bd64ed69df77e
F test/loadext.test faa4f6eed07a5aac35d57fdd7bc07f8fc82464cfd327567c10cf0ba3c86cde04
F test/loadext2.test 0408380b57adca04004247179837a18e866a74f7
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 148d505ca08adcc776748d4d01fde022ab5add745d6b2573922a66e516b51681
-Q +a0f39419cb5bdfa42ab2978cf3819e3d7821212996571f8251d2efbeaa26c603
-R 1aec0b9a4c85c0e5c4b4a0fd66b01c71
+P b021399a6e93afbb3368a5ae94c0f29c97ec6603bf9a5b7f86ca63c94590c2c3
+Q +90c6b9fcb0e15e2552fe5be53f8201f145bb535cc37b603d488eadf33438412b
+R cde3ad7074af2ec4719433afc58a7ea1
+T *branch * branch-3.28-limit-patch
+T *sym-branch-3.28-limit-patch *
+T -sym-branch-3.28 *
U drh
-Z 252815416379df1b7cdbf62123df53d6
+Z f7b9fa759ca50692d7ea594ac8fcfb6b
# Remove this line to create a well-formed Fossil manifest.
pPrior->iOffset = p->iOffset;
pPrior->pLimit = p->pLimit;
rc = sqlite3Select(pParse, pPrior, &dest);
- p->pLimit = 0;
+ pPrior->pLimit = 0;
if( rc ){
goto multi_select_end;
}
pDelete = p->pPrior;
p->pPrior = pPrior;
p->nSelectRow = sqlite3LogEstAdd(p->nSelectRow, pPrior->nSelectRow);
- if( pPrior->pLimit
- && sqlite3ExprIsInteger(pPrior->pLimit->pLeft, &nLimit, pParse)
+ if( p->pLimit
+ && sqlite3ExprIsInteger(p->pLimit->pLeft, &nLimit, pParse)
&& nLimit>0 && p->nSelectRow > sqlite3LogEst((u64)nLimit)
){
p->nSelectRow = sqlite3LogEst((u64)nLimit);
SELECT 123 LIMIT -1 OFFSET 1
} {}
+# 2021-03-05 dbsqlfuzz crash-d811039c9f44f2d43199d5889fcf4085ef6221b9
+#
+reset_db
+do_execsql_test limit-15.1 {
+ CREATE TABLE t1(a PRIMARY KEY, b TEXT);
+ CREATE TABLE t4(c PRIMARY KEY, d);
+ CREATE TABLE t5(e PRIMARY KEY, f);
+ CREATE TABLE t6(g, h);
+ CREATE TABLE t3_a(k, v);
+ CREATE TABLE t3_b(k, v);
+ CREATE VIEW t3 AS SELECT * FROM t3_a UNION ALL SELECT * FROM t3_b;
+ INSERT INTO t5(e,f) VALUES(500000,'orange');
+ INSERT INTO t4(c,d) VALUES(300000,'blue'),(400,'green'),(8000,'grey');
+ INSERT INTO t1(a,b) VALUES(300000,'purple');
+ INSERT INTO t3_a VALUES(300000,'yellow'),(500,'pink'),(8000,'red');
+ INSERT INTO t6 default values;
+ SELECT (
+ SELECT 100000 FROM
+ (SELECT 200000 FROM t6 WHERE a = ( SELECT 300000 FROM t3 WHERE a ) ),
+ (SELECT 400000 FROM t5 WHERE e=500000),
+ (SELECT 600000 FROM t4 WHERE c=a)
+ ) FROM t1;
+} {100000}
finish_test