From: drh Date: Wed, 24 May 2017 04:32:09 +0000 (+0000) Subject: Fix a problem in STAT4 equality estimation for multi-column indexes X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=607e10998df6817c8208a5a8274a49ddf22e599b;p=thirdparty%2Fsqlite.git Fix a problem in STAT4 equality estimation for multi-column indexes introduced by check-in [3e0590dee0e68cc1599]. FossilOrigin-Name: 19dad0a720c41d1d111f42cb2cb1f291c559957e76e3f88dc6cfc065e4845e77 --- diff --git a/manifest b/manifest index 16f12bf973..20d99a9464 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C When\splanning\sa\squery\susing\ssorting,\sresolve\sties\sin\sthe\ssolver\sby\sselecting\nloop\splans\swith\sthe\ssmaller\sunsorted\scost. -D 2017-05-22T00:27:20.133 +C Fix\sa\sproblem\sin\sSTAT4\sequality\sestimation\sfor\smulti-column\sindexes\nintroduced\sby\scheck-in\s[3e0590dee0e68cc1599]. +D 2017-05-24T04:32:09.002 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 00d12636df7a5b08af09116bcd6c7bfd49b8b3b4 F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@ -307,7 +307,7 @@ F src/vxworks.h c18586c8edc1bddbc15c004fa16aeb1e1342b4fb F src/wal.c 878c8e1a51cb2ec45c395d26b7d5cd9e1a098e4a F src/wal.h df01efe09c5cb8c8e391ff1715cca294f89668a4 F src/walker.c c253b95b4ee44b21c406e2a1052636c31ea27804 -F src/where.c 688071f74bbf08e838ef1879782325223c2e465d92b845bbf19ce90f6c15d044 +F src/where.c 5b519760ffaeb8ea70c34ba6bd8344d768338c6a7ba907b01746cd92adde04ea F src/whereInt.h 1d1fd0b3b9b56e08f5d3583c70a2c785a3c43941 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2 F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2 @@ -1250,7 +1250,8 @@ F tool/vdbe_profile.tcl 67746953071a9f8f2f668b73fe899074e2c6d8c1 F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 0abfd78ceb09b7f7c27c688c8e3fe93268a13b32 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P 4f83f6806aa6816656668feb181369500cc2cf0f -R abb458770ab34fef4666f2b8a27d0cc7 +P 962531e7c1f3ff604271ddf9f47b6234dfd47702ccf24849f55b80814e7be267 +Q +cfb0d9e0207128b1c2b48689288a849b19dbc00a22cfaca26eec4bfc773629f8 +R c9188aceef445e879bb3dddeb4f04ce6 U drh -Z 12384a5cf88084fac7cfaa713d4c7be3 +Z 7f2d1982b25e32d3d73ef1fd9b977c9b diff --git a/manifest.uuid b/manifest.uuid index c997916551..004e164398 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -962531e7c1f3ff604271ddf9f47b6234dfd47702ccf24849f55b80814e7be267 \ No newline at end of file +19dad0a720c41d1d111f42cb2cb1f291c559957e76e3f88dc6cfc065e4845e77 \ No newline at end of file diff --git a/src/where.c b/src/where.c index faf6d78c5f..eff53bc9ba 100644 --- a/src/where.c +++ b/src/where.c @@ -2221,7 +2221,7 @@ static int whereKeyStats( iGap = iGap/3; } aStat[0] = iLower + iGap; - aStat[1] = pIdx->aAvgEq[iCol]; + aStat[1] = pIdx->aAvgEq[nField-1]; } /* Restore the pRec->nField value before returning. */