1
0
mirror of https://github.com/sqlite/sqlite.git synced 2026-10-23 21:49:02 +03:00

Mark the AND optimization as "not-a-real-0-or-1" so as not to confuse

ORDER BY and GROUP BY clauses.
[bugs:/info/2026-10-21T15:33:18Z|Bug 2026-10-21T15:33:18Z]

FossilOrigin-Name: 16cf625360a1448741dafa3d67263b5dda112648a05a0df6a766fae95b529f45
This commit is contained in:
drh
2026-10-21 17:36:54 +00:00
parent 4f6dc901fe
commit 0168a3f32b
3 changed files with 12 additions and 9 deletions

View File

@@ -1,5 +1,5 @@
C Do\snot\ssynthesize\sposition-lists\sfor\sUNINDEXED\sfts5\scolumns\sin\sdetail=none\smode.\sReport\s[bugs:/info/2026-10-20T20:40:52Z\s|\s2026-10-20T20:40:52Z].
D 2026-10-21T17:23:01.623
C Mark\sthe\sAND\soptimization\sas\s"not-a-real-0-or-1"\sso\sas\snot\sto\sconfuse\nORDER\sBY\sand\sGROUP\sBY\sclauses.\n[bugs:/info/2026-10-21T15:33:18Z|Bug\s2026-10-21T15:33:18Z]
D 2026-10-21T17:36:54.712
F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -758,7 +758,7 @@ F src/date.c a55811d8e799ef76f3da9abf5a976dbe799208113f1da94ee25ae0aec2a14707
F src/dbpage.c ec8590c5e7a564cef28ca3c6156521316a4d26cb572a34841b0bcb26b67b3f97
F src/dbstat.c 34d4e825fbf763640ce3dbc56910ab080495ef4a6efb48b2b1852a43d43763fc
F src/delete.c f3f07c1fb6ac87fac2425d48fd40ecb2f24a4495a9966f5a939668d3576916c8
F src/expr.c 7ff00869afa1d3f11ea5f232c78e7b73a1a33bc1cb29c0af063b768658495234
F src/expr.c e7dd44a69f47f0b462a1bbd4180f059db0e554ca48d5c360a5ffba450a2c1d9c
F src/fault.c 460f3e55994363812d9d60844b2a6de88826e007
F src/fkey.c b5dd0cb20393ccac7bed59e7a52f40f50ff37e68f4e27dd1eaac8b5f171ab317
F src/func.c 8c500a079a52d789613b173ba1894b143f8e38009bab224179bc89d3493201a0
@@ -2297,8 +2297,8 @@ F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee
F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c
P fa0247a431bd99a9442c61028dc85ad1ffd2c5ea5b76ab68c394eaeda9af9409
R affd33c9d8876bfd93e51fb81f3ecf9e
U dan
Z f4fc6c28f8cfa703fef426b85c759779
P 64e37575ca1531ebea52402e6fa9ee1de399f1767f5baedc12ffde03a995b477
R 9034197ee85f21356fb0b0e26aaeee87
U drh
Z be309a30daef5854e1f55ae57558f4e0
# Remove this line to create a well-formed Fossil manifest.

View File

@@ -1 +1 @@
64e37575ca1531ebea52402e6fa9ee1de399f1767f5baedc12ffde03a995b477
16cf625360a1448741dafa3d67263b5dda112648a05a0df6a766fae95b529f45

View File

@@ -1171,9 +1171,12 @@ Expr *sqlite3ExprAnd(Parse *pParse, Expr *pLeft, Expr *pRight){
if( (f&(EP_OuterON|EP_InnerON|EP_IsFalse|EP_HasFunc))==EP_IsFalse
&& !IN_RENAME_OBJECT
){
Expr *p;
sqlite3ExprDeferredDelete(pParse, pLeft);
sqlite3ExprDeferredDelete(pParse, pRight);
return sqlite3ExprInt32(db, 0);
p = sqlite3ExprInt32(db, 0);
if( p ) p->op2 = 1;
return p;
}else{
return sqlite3PExpr(pParse, TK_AND, pLeft, pRight);
}