]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Restore the ability to push-down OR subterms of the WHERE clause when
authordrh <>
Thu, 3 Mar 2022 19:40:21 +0000 (19:40 +0000)
committerdrh <>
Thu, 3 Mar 2022 19:40:21 +0000 (19:40 +0000)
processing a multi-index OR.

FossilOrigin-Name: d71fb6fdc32d2fce73059b6ab86d7d7bbc812c637469755dd45b6794aadc3a80

manifest
manifest.uuid
src/wherecode.c

index 2961d421fe0747d551466b89f906612b0c554d74..8705c1f52f4222b2eb533c6bb2ce9b364d1d82e6 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Make\ssure\sthe\sxParseCell\sand\sxCellSize\smethods\sof\sthe\sMemPage\sobject\sare\ninitialized\sconsistently\seven\sif\sthe\spage\sis\sdetected\sas\sbeing\scorrupt.\ndbsqlfuzz\sfd21f341f3b4f582401d2feb2a1c0c4cc2c26caa.
-D 2022-03-03T16:48:35.284
+C Restore\sthe\sability\sto\spush-down\sOR\ssubterms\sof\sthe\sWHERE\sclause\swhen\nprocessing\sa\smulti-index\sOR.
+D 2022-03-03T19:40:21.148
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -641,7 +641,7 @@ F src/wal.h c3aa7825bfa2fe0d85bef2db94655f99870a285778baa36307c0a16da32b226a
 F src/walker.c f890a3298418d7cba3b69b8803594fdc484ea241206a8dfa99db6dd36f8cbb3b
 F src/where.c 0d75d7514764726409ea945520fe9fb515e7d9ae52a5a3c0a136142cfaa19087
 F src/whereInt.h 15d2975c3b4c193c78c26674400a840da8647fe1777ae3b026e2d15937b38a03
-F src/wherecode.c 5559cf12b4d3f6d123f70f9097a88fa879921785e9b69815a8901b89d63a87bf
+F src/wherecode.c e0f6be39a0938008a20f1b1a528225f2364c459e88603799c417247a4ea3836c
 F src/whereexpr.c 2a71f5491798460c9590317329234d332d9eb1717cba4f3403122189a75c465e
 F src/window.c dfaec4abc6012cbc18e4a202ca3a5d5a0efcc4011d86a06d882ddaab8aedee4d
 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
@@ -1944,8 +1944,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P 61a1c6dbd089979cbeb8b0c0c5ee1ab1abcb466be1d21a3a851be73c27e67a6c
-R e394f5d71fcf3ab03b849ac8d2f2e010
+P 725a06434b886c96bb816340ef236530672a4593f0ceb3230ce69c8367beb997
+R 4b254954a632dbd7b6a27be8beffe3fb
 U drh
-Z 6957f162062fe17752cd0dc465054be9
+Z 721c2ad23ec3a940469fd54f5a97ae6c
 # Remove this line to create a well-formed Fossil manifest.
index f3b06b1630052bbf6840b7518cd8bf2192c3459b..f321fa24223a3e97eca403403308bc7a30e18422 100644 (file)
@@ -1 +1 @@
-725a06434b886c96bb816340ef236530672a4593f0ceb3230ce69c8367beb997
\ No newline at end of file
+d71fb6fdc32d2fce73059b6ab86d7d7bbc812c637469755dd45b6794aadc3a80
\ No newline at end of file
index ff82ffc1a56d6deb83919877626fdde3bcb08c85..d1f0635e7acda4b3f0f7761f50317ee7ec7a6cd7 100644 (file)
@@ -2365,7 +2365,7 @@ Bitmask sqlite3WhereCodeOneLoopStart(
         if( (pWC->a[iTerm].wtFlags & (TERM_VIRTUAL|TERM_CODED|TERM_SLICE))!=0 ){
           continue;
         }
-        if( (pWC->a[iTerm].eOperator & WO_SINGLE)==0 ) continue;
+        if( (pWC->a[iTerm].eOperator & WO_ALL)==0 ) continue;
         if( ExprHasProperty(pExpr, EP_Subquery) ) continue;  /* tag-20220303a */
         pExpr = sqlite3ExprDup(db, pExpr, 0);
         pAndExpr = sqlite3ExprAnd(pParse, pAndExpr, pExpr);