From: drh <> Date: Fri, 15 Sep 2023 19:27:36 +0000 (+0000) Subject: Minor simplification to the DISTINCT output row count change. X-Git-Tag: version-3.44.0~194^2 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=refs%2Fheads%2Frethink-viewscan;p=thirdparty%2Fsqlite.git Minor simplification to the DISTINCT output row count change. FossilOrigin-Name: 0738386d7c505a98768ddaff7ff1fc76f115882d92d6f84bf136b4aa2caad8b8 --- diff --git a/manifest b/manifest index 510c5900c5..7883893be5 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Do\snot\sreduce\ssubquery\soutput\srow\scount\sestimates\sdue\sto\sDISTINCT\suntil\nafter\sthe\sdecision\sof\swhether\sor\snot\sto\suse\san\sindex\sfor\sORDER\sBY\shas\sbeen\nmade. -D 2023-09-15T19:00:47.376 +C Minor\ssimplification\sto\sthe\sDISTINCT\soutput\srow\scount\schange. +D 2023-09-15T19:27:36.965 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -795,7 +795,7 @@ F src/vxworks.h d2988f4e5a61a4dfe82c6524dd3d6e4f2ce3cdb9 F src/wal.c 01e051a1e713d9eabdb25df38602837cec8f4c2cae448ce2cf6accc87af903e9 F src/wal.h ba252daaa94f889f4b2c17c027e823d9be47ce39da1d3799886bbd51f0490452 F src/walker.c 7c7ea0115345851c3da4e04e2e239a29983b61fb5b038b94eede6aba462640e2 -F src/where.c bd10b322a40abc2ebfba61fd1f3c434052f68cf991487c4ed1da9c9f94aa0e87 +F src/where.c b05f3e60d576a0415948ca1e86754a3c564c0d9e89e3011e35f849cc4d818ef8 F src/whereInt.h 4b38c5889514e3aead3f27d0ee9a26e47c3f150efc59e2a8b4e3bc8835e4d7a1 F src/wherecode.c 5d77db30a2a3dd532492ae882de114edba2fae672622056b1c7fd61f5917a8f1 F src/whereexpr.c dc5096eca5ed503999be3bdee8a90c51361289a678d396a220912e9cb73b3c00 @@ -2121,8 +2121,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 5a940e47d501f23347eaf084f4820e064e93665d19c8938c80715b71006ede8b -R 708ef68b1a5a2dad2e7d5b5c554e468e +P 27390051e86ad86fb35219329d359be9e83073f59782631af7fc519225e10565 +R 38093a5d0a73ed2782b293b0009addb5 U drh -Z 3822ece14e8e4a55dc3118a267231484 +Z 00aba278fb7af4364c7414b32687072d # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 139acb4f86..56368e687c 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -27390051e86ad86fb35219329d359be9e83073f59782631af7fc519225e10565 \ No newline at end of file +0738386d7c505a98768ddaff7ff1fc76f115882d92d6f84bf136b4aa2caad8b8 \ No newline at end of file diff --git a/src/where.c b/src/where.c index c10ab27a88..3a865d3f19 100644 --- a/src/where.c +++ b/src/where.c @@ -6134,11 +6134,9 @@ WhereInfo *sqlite3WhereBegin( } /* TUNING: Assume that a DISTINCT clause on a subquery reduces - ** the output size by a factor of 8 (LogEst -30) + ** the output size by a factor of 8 (LogEst -30). */ - if( (pWInfo->wctrlFlags & WHERE_WANT_DISTINCT)!=0 - && pWInfo->nRowOut>=40 - ){ + if( (pWInfo->wctrlFlags & WHERE_WANT_DISTINCT)!=0 ){ WHERETRACE(0x0080,("nRowOut reduced from %d to %d due to DISTINCT\n", pWInfo->nRowOut, pWInfo->nRowOut-30)); pWInfo->nRowOut -= 30;