mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-14 00:22:38 +03:00
Fix a bug in LIMIT 0 for compound SELECT statement.
The problem was introduced by recent enhancements and has not appeared in any release. FossilOrigin-Name: c6ed7e2a73a7a65cfa914ffcad4f603b6b7a22a8
This commit is contained in:
18
manifest
18
manifest
@@ -1,8 +1,8 @@
|
|||||||
-----BEGIN PGP SIGNED MESSAGE-----
|
-----BEGIN PGP SIGNED MESSAGE-----
|
||||||
Hash: SHA1
|
Hash: SHA1
|
||||||
|
|
||||||
C If\sthe\sroot\spages\snumbers\sof\sthe\sinternal\sschema\sare\sadjusted\sdue\sto\s\nautovacuum\son\sa\sDROP\sTABLE\sstatement\sand\sthat\sstatement\slater\saborts\s(for\nexample,\sdue\sto\san\sOOM\serror)\sthen\sreset\sthe\sinternal\sschema\sat\sthe\nconclusion\sof\sthe\sstatement.\nPartial\sfix\sfor\sticket\s[564d412f15a].
|
C Fix\sa\sbug\sin\sLIMIT\s0\sfor\scompound\sSELECT\sstatement.\nThe\sproblem\swas\sintroduced\sby\srecent\senhancements\sand\shas\snot\sappeared\nin\sany\srelease.
|
||||||
D 2009-11-20T15:02:34
|
D 2009-11-20T16:13:15
|
||||||
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
|
F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0
|
||||||
F Makefile.in 7f6c6aa7feeeb5e26e01b344161d9aa1b5d64177
|
F Makefile.in 7f6c6aa7feeeb5e26e01b344161d9aa1b5d64177
|
||||||
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654
|
||||||
@@ -165,7 +165,7 @@ F src/printf.c 03fabdd6112a0e23f78f8ac9a1396947ade0273b
|
|||||||
F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50
|
F src/random.c cd4a67b3953b88019f8cd4ccd81394a8ddfaba50
|
||||||
F src/resolve.c aa3cb21e1ecd905c071fce8fb64d1a166cefc239
|
F src/resolve.c aa3cb21e1ecd905c071fce8fb64d1a166cefc239
|
||||||
F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697
|
F src/rowset.c 69afa95a97c524ba6faf3805e717b5b7ae85a697
|
||||||
F src/select.c a727f61f3267bfa20ce1c3e85d38dc2132db1060
|
F src/select.c 2f9ed7482e7a25b0b127fc41693bbdbe1caf5647
|
||||||
F src/shell.c f4948cb6d30665d755a6b5e0ec313d1094aab828
|
F src/shell.c f4948cb6d30665d755a6b5e0ec313d1094aab828
|
||||||
F src/sqlite.h.in 4464e9772122f0447305d425e04d122b6f1bffec
|
F src/sqlite.h.in 4464e9772122f0447305d425e04d122b6f1bffec
|
||||||
F src/sqlite3ext.h 69dfb8116af51b84a029cddb3b35062354270c89
|
F src/sqlite3ext.h 69dfb8116af51b84a029cddb3b35062354270c89
|
||||||
@@ -775,14 +775,14 @@ F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff
|
|||||||
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
F tool/speedtest8.c 2902c46588c40b55661e471d7a86e4dd71a18224
|
||||||
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e
|
||||||
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
F tool/vdbe-compress.tcl d70ea6d8a19e3571d7ab8c9b75cba86d1173ff0f
|
||||||
P 9a429349ccc2fa9acd28365a86578f602e87dafb
|
P e493b093f8ca722c3160b32a16fb615023978dc9
|
||||||
R 98fcdb3bebf5cd6b5539291ec5159fa2
|
R 5ec1b2582562a57f9f564d3489d61dc3
|
||||||
U drh
|
U drh
|
||||||
Z d921d0e136eadcd906a3ecc76e7083b9
|
Z 1a324a1c90a5bbddcb009087c1541226
|
||||||
-----BEGIN PGP SIGNATURE-----
|
-----BEGIN PGP SIGNATURE-----
|
||||||
Version: GnuPG v1.4.6 (GNU/Linux)
|
Version: GnuPG v1.4.6 (GNU/Linux)
|
||||||
|
|
||||||
iD8DBQFLBq+NoxKgR168RlERAuHoAJ4xcaWqbV9st4vnlQ8SbWQTMKFcKACgiAlE
|
iD8DBQFLBsAeoxKgR168RlERAjHuAJ9QJtWD6T56mccvLQ1ITcoNvvNpMwCfZr52
|
||||||
s6FOzlbJpHpo7yi7MLuMesw=
|
Jqb5eUds3ueWwA0ZJsx59YQ=
|
||||||
=HELf
|
=bz6Y
|
||||||
-----END PGP SIGNATURE-----
|
-----END PGP SIGNATURE-----
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
e493b093f8ca722c3160b32a16fb615023978dc9
|
c6ed7e2a73a7a65cfa914ffcad4f603b6b7a22a8
|
||||||
@@ -1323,11 +1323,10 @@ static void computeLimitRegisters(Parse *pParse, Select *p, int iBreak){
|
|||||||
v = sqlite3GetVdbe(pParse);
|
v = sqlite3GetVdbe(pParse);
|
||||||
if( NEVER(v==0) ) return; /* VDBE should have already been allocated */
|
if( NEVER(v==0) ) return; /* VDBE should have already been allocated */
|
||||||
if( sqlite3ExprIsInteger(p->pLimit, &n) ){
|
if( sqlite3ExprIsInteger(p->pLimit, &n) ){
|
||||||
|
sqlite3VdbeAddOp2(v, OP_Integer, n, iLimit);
|
||||||
|
VdbeComment((v, "LIMIT counter"));
|
||||||
if( n==0 ){
|
if( n==0 ){
|
||||||
sqlite3VdbeAddOp2(v, OP_Goto, 0, iBreak);
|
sqlite3VdbeAddOp2(v, OP_Goto, 0, iBreak);
|
||||||
}else{
|
|
||||||
sqlite3VdbeAddOp2(v, OP_Integer, n, iLimit);
|
|
||||||
VdbeComment((v, "LIMIT counter"));
|
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
sqlite3ExprCode(pParse, p->pLimit, iLimit);
|
sqlite3ExprCode(pParse, p->pLimit, iLimit);
|
||||||
|
|||||||
Reference in New Issue
Block a user