From: drh Date: Fri, 14 Apr 2017 17:30:43 +0000 (+0000) Subject: When doing a DISTINCT query using an index, try to use the index to skip ahead X-Git-Tag: version-3.19.0~59 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=1a17b44231b0116fcd065043ac722443bc2f4f7f;p=thirdparty%2Fsqlite.git When doing a DISTINCT query using an index, try to use the index to skip ahead to the next distinct element, rather than doing a full scan of the index. (This is the "skip-ahead-distinct" optimization.) FossilOrigin-Name: f489b5bb6b35665befdd411c2c55df5258e83cba265d8c4427ba22529cf882a4 --- 1a17b44231b0116fcd065043ac722443bc2f4f7f diff --cc manifest index 6a6c5eab16,91fde0d998..658ad9ece0 --- a/manifest +++ b/manifest @@@ -1,8 -1,8 +1,8 @@@ - C Make\sUSE_FULLWARN=1\sthe\sdefault\sfor\sMSVC\sand\sfix\sharmless\scompiler\swarnings. - D 2017-04-14T14:50:34.600 -C Fix\sa\scouple\sof\sunreachable\sbranches. -D 2017-04-14T00:45:51.643 ++C When\sdoing\sa\sDISTINCT\squery\susing\san\sindex,\stry\sto\suse\sthe\sindex\sto\sskip\sahead\nto\sthe\snext\sdistinct\selement,\srather\sthan\sdoing\sa\sfull\sscan\sof\sthe\sindex.\n(This\sis\sthe\s"skip-ahead-distinct"\soptimization.) ++D 2017-04-14T17:30:43.741 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 -F Makefile.msc a4c0613a18663bda56d8cf76079ab6590a7c3602e54befb4bbdef76bcaa38b6a +F Makefile.msc 6a8c838220f7c00820e1fc0ac1bccaaa8e5676067e1dbfa1bafa7a4ffecf8ae6 F README.md 2b15fae33852f2f53996774c21fb41e1d94181c4401a0e43ac93e11f2cc901b9 F VERSION 0a0e02e16b44ea735b40118fc844311b2ab0d35b25fbeda5120aee62f973f663 F aclocal.m4 a5c22d164aff7ed549d53a90fa56d56955281f50 @@@ -1571,7 -1572,7 +1572,8 @@@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a9 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 - P 5159cb8f2bcfb1f7114786ba23082d2b91a26e3a7ddfae75f8bd362792949d5e - R 3270eeed59983be191492d424a0b906b - U mistachkin - Z edc8ddb73a9c8e57e014e4878b2c6186 -P ce1e2b88777e00a82c04abe5ba35eec81b5f324e462f099cd00b21054f369688 -R 0ca9ecc0c2f53a31b4c154be4d5df4e8 ++P 6bf673767b8e5cedef1acff795cbe524fab8db2525c06424db4e038934a33936 1aa0ea8db7580aff8bed2f78117ed50019e5545cef48cab782f512a2599fd0c5 ++R 23e98d199cf27acff0cc1d4208755e74 ++T +closed 1aa0ea8db7580aff8bed2f78117ed50019e5545cef48cab782f512a2599fd0c5 + U drh -Z ac554ac9c4b24b721f6e08016943d6a5 ++Z 6edb0fabfc88ce2a863c335cf5598131 diff --cc manifest.uuid index 39cfc39f28,bf75741857..dedaf39dc7 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - 6bf673767b8e5cedef1acff795cbe524fab8db2525c06424db4e038934a33936 -1aa0ea8db7580aff8bed2f78117ed50019e5545cef48cab782f512a2599fd0c5 ++f489b5bb6b35665befdd411c2c55df5258e83cba265d8c4427ba22529cf882a4