]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Changes an unreachable testcase() into an assert().
authordrh <drh@noemail.net>
Mon, 4 Nov 2019 12:49:15 +0000 (12:49 +0000)
committerdrh <drh@noemail.net>
Mon, 4 Nov 2019 12:49:15 +0000 (12:49 +0000)
FossilOrigin-Name: 5710845b6314f924b490434b4446169f4bb50576aaa940472af68150db16e127

manifest
manifest.uuid
src/wherecode.c

index a33e9dff2beb5609e71b773183e359bd7cb5f350..339c917f7c8da5b12eb745349e9478d3fb61cf8f 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\sa\sfalse-postive\sin\sthe\ssqlite3ExprImpliesNonNullRow()\sdecision\sroutine,\nthat\sresulted\sin\san\sincorrect\sLEFT\sJOIN\sstrength\sreduction\swhen\sthe\nWHERE\sclause\scontained\sa\srow-value\scomparison.\nTicket\s[02aa2bd02f97d0f2]
-D 2019-11-04T02:05:52.518
+C Changes\san\sunreachable\stestcase()\sinto\san\sassert().
+D 2019-11-04T12:49:15.714
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -614,7 +614,7 @@ F src/wal.h 606292549f5a7be50b6227bd685fa76e3a4affad71bb8ac5ce4cb5c79f6a176a
 F src/walker.c d5a94907dcac990e31976be9dc769d17f6a806782593d6aec9d760ee01ec22cd
 F src/where.c 6e56bef94dc1e2d4461fca49604602312dc620333572aad9511e5ca2120aff31
 F src/whereInt.h 4a296fd4fa79fdcbc2b5e8c1b898901617655811223e1082b899c23ecb092217
-F src/wherecode.c 123cd05eae51dd2d9e9e0483680298c3a62529a6ed3ec29ce217a2834427cabb
+F src/wherecode.c 4b6517752f9a4b6d005ff339515a94666e01d10d70a8e7468845a68fcb91d6f4
 F src/whereexpr.c 0705f608f6dbbd4e95d440528d6c760b91b6f402ba4eb8b8d964c110e2010780
 F src/window.c 064f251451c8e2a1c76b6269229d911a651e119c6a5f522b6eaebf8dc8714041
 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2
@@ -1849,7 +1849,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 3be19e1151af1850b65991edb82420f9412a7798dd756c86eaa9ffdde573263a
-R a30fee6557c8c0c73b7fe40e3d78c678
+P ea20068e6d97c9349ebcc7d0a01e99ebf08c6f44363f71a0218a1abea209adc5
+R 522274fac7018c4024e93ec3a1293bef
 U drh
-Z 03f3426d008bb8fbab5050ae611b4dd0
+Z aee10eb2e9b1cf05ea78fe90a73aaf4a
index b921ad9c0dbd3db9f648f22ce9e755b067cc193f..f20d6b7ae7f1681a90785a7717fbb832f56776c5 100644 (file)
@@ -1 +1 @@
-ea20068e6d97c9349ebcc7d0a01e99ebf08c6f44363f71a0218a1abea209adc5
\ No newline at end of file
+5710845b6314f924b490434b4446169f4bb50576aaa940472af68150db16e127
\ No newline at end of file
index 7447fafb5aea8437c384c3907a26207e5e35e354..b9801407bb1051a05e74d6c34e2285bf8172a74b 100644 (file)
@@ -1903,8 +1903,11 @@ Bitmask sqlite3WhereCodeOneLoopStart(
         whereApplyPartialIndexConstraints(pIdx->pPartIdxWhere, iCur, pWC);
       }
     }else{
-      testcase( (pWInfo->wctrlFlags & WHERE_OR_SUBCLAUSE)==0 );
       testcase( pIdx->pPartIdxWhere );
+      /* The following assert() is not a requirement, merely an observation:
+      ** The OR-optimization doesn't work for the right hand table of
+      ** a LEFT JOIN: */
+      assert( (pWInfo->wctrlFlags & WHERE_OR_SUBCLAUSE)==0 );
     }
   
     /* Record the instruction used to terminate the loop. */