From: drh Date: Fri, 13 Sep 2013 17:47:57 +0000 (+0000) Subject: Adjust the query planner to take into account WHERE clause terms that do not X-Git-Tag: version-3.8.1~78 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a496fa7c0248bd666d1260f51b93f9b4ab0732df;p=thirdparty%2Fsqlite.git Adjust the query planner to take into account WHERE clause terms that do not drive indices. Add the unlikely() and likelihood() functions used to give hints to the query planner about the selectivity of WHERE clause terms. FossilOrigin-Name: bc446449a19171c0fa0681973b06bc80d3c0517f --- a496fa7c0248bd666d1260f51b93f9b4ab0732df diff --cc manifest index 4754d70f34,f8d28e34a8..6f7f939043 --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Enhance\sthe\spragma\slookup\stable\sgenerator\sscript\sto\soutput\sa\scomment\sthat\ngives\sthe\snumber\sof\spragmas. - D 2013-09-13T16:56:17.293 -C Refactor\sthe\sExprSetIrreducible()\smacro\sinto\sExprSetVVAProperty(*,EP_NoReduce).\nThis\sis\sa\snaming\schange\sonly.\s\sThe\slogic\sis\sthe\ssame. -D 2013-09-12T23:42:22.354 ++C Adjust\sthe\squery\splanner\sto\stake\sinto\saccount\sWHERE\sclause\sterms\sthat\sdo\snot\ndrive\sindices.\s\sAdd\sthe\sunlikely()\sand\slikelihood()\sfunctions\sused\sto\sgive\nhints\sto\sthe\squery\splanner\sabout\sthe\sselectivity\sof\sWHERE\sclause\sterms. ++D 2013-09-13T17:47:57.412 F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f F Makefile.in 5e41da95d92656a5004b03d3576e8b226858a28e F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23 @@@ -172,10 -172,10 +172,10 @@@ F src/complete.c dc1d136c0feee03c2f7550 F src/ctime.c ea4b7f3623a0fcb1146e7f245d7410033e86859c F src/date.c 067a81c9942c497aafd2c260e13add8a7d0c7dd4 F src/delete.c 2dc64ca360b7d7da481183ea920a813a0c203c97 - F src/expr.c 33ae44812d25799000dbcfd54bb2142b30cdd049 + F src/expr.c 58ffffbb83d2bbf59c6a7a080cf6622a1ddbf264 F src/fault.c 160a0c015b6c2629d3899ed2daf63d75754a32bb F src/fkey.c be866cd8c4fa6cae98ba33109578fd1a3311ee5b - F src/func.c be8482e92e70560e127b55a989663c0689c657cd -F src/func.c 0aca17c8bc750fad4856e6098ed5e2597b641a75 ++F src/func.c 2c47b65e6e00e3e9374942f28254faf8adafe398 F src/global.c 5caf4deab621abb45b4c607aad1bd21c20aac759 F src/hash.c ac3470bbf1ca4ae4e306a8ecb0fdf1731810ffe4 F src/hash.h 8890a25af81fb85a9ad7790d32eedab4b994da22 @@@ -1113,7 -1113,7 +1114,7 @@@ F tool/warnings-clang.sh f6aa929dc20ef1 F tool/warnings.sh fbc018d67fd7395f440c28f33ef0f94420226381 F tool/wherecosttest.c f407dc4c79786982a475261866a161cd007947ae F tool/win/sqlite.vsix 97894c2790eda7b5bce3cc79cb2a8ec2fde9b3ac - P 870c030b4e1854e6e0d39907fadbd82774c16f56 - R 8afb65d113bbf2b92c215847e16c4a85 -P 4c84d1b4c20f18921dd705bf67e8225975b83e86 -R a4ae742117959f8b867f4728cbf6ae0f ++P ca05205050752b5d5f583421b7813fba62f5085c 695aee46e9bdf15159ab52db7f522b30c91aed0f ++R 980cfef5e90de5b8a20e59163235b5ab U drh - Z 4c8308b89b9a52a9fa36455ebe75f0fa -Z 5e782298e284a317de441c3b3e41bc0d ++Z 7155733e1fc2738b458062a357e01575 diff --cc manifest.uuid index 773f07f87e,56a7606a6c..6c1b6e74c3 --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - ca05205050752b5d5f583421b7813fba62f5085c -695aee46e9bdf15159ab52db7f522b30c91aed0f ++bc446449a19171c0fa0681973b06bc80d3c0517f