mirror of
https://github.com/sqlite/sqlite.git
synced 2025-11-16 23:02:26 +03:00
Update comments in where.c. No code changes. (CVS 2727)
FossilOrigin-Name: bb84d27eda64479d65b13fbbcaeef6a00da4d103
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Documentation\supdates.\s(CVS\s2726)
|
C Update\scomments\sin\swhere.c.\s\sNo\scode\schanges.\s(CVS\s2727)
|
||||||
D 2005-09-20T01:36:30
|
D 2005-09-20T08:47:20
|
||||||
F Makefile.in 12784cdce5ffc8dfb707300c34e4f1eb3b8a14f1
|
F Makefile.in 12784cdce5ffc8dfb707300c34e4f1eb3b8a14f1
|
||||||
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
|
F Makefile.linux-gcc 06be33b2a9ad4f005a5f42b22c4a19dab3cbb5c7
|
||||||
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
F README 9c4e2d6706bdcc3efdd773ce752a8cdab4f90028
|
||||||
@@ -87,7 +87,7 @@ F src/vdbeapi.c 85bbe1d0243a89655433d60711b4bd71979b59cd
|
|||||||
F src/vdbeaux.c 57a6ced8417bdc6f06c391d9c560ecbbed644ef3
|
F src/vdbeaux.c 57a6ced8417bdc6f06c391d9c560ecbbed644ef3
|
||||||
F src/vdbefifo.c 9efb94c8c3f4c979ebd0028219483f88e57584f5
|
F src/vdbefifo.c 9efb94c8c3f4c979ebd0028219483f88e57584f5
|
||||||
F src/vdbemem.c fea0744936008831daa17cdc75056c3ca1469690
|
F src/vdbemem.c fea0744936008831daa17cdc75056c3ca1469690
|
||||||
F src/where.c 2b7b4dd112a027021d9c53e25d221761d572a925
|
F src/where.c 363b4fb0aee9fe69367ceaab0974dafa4e4ab900
|
||||||
F tclinstaller.tcl 046e3624671962dc50f0481d7c25b38ef803eb42
|
F tclinstaller.tcl 046e3624671962dc50f0481d7c25b38ef803eb42
|
||||||
F test/all.test 7f0988442ab811dfa41793b5b550f5828ce316f3
|
F test/all.test 7f0988442ab811dfa41793b5b550f5828ce316f3
|
||||||
F test/alter.test 9d6837a3d946b73df692b7cef2a7644d2e2f6bc6
|
F test/alter.test 9d6837a3d946b73df692b7cef2a7644d2e2f6bc6
|
||||||
@@ -311,7 +311,7 @@ F www/tclsqlite.tcl ddcf912ea48695603c8ed7efb29f0812ef8d1b49
|
|||||||
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
F www/vdbe.tcl 87a31ace769f20d3627a64fa1fade7fed47b90d0
|
||||||
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
F www/version3.tcl a99cf5f6d8bd4d5537584a2b342f0fb9fa601d8b
|
||||||
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
F www/whentouse.tcl 97e2b5cd296f7d8057e11f44427dea8a4c2db513
|
||||||
P ea10f9785e3c5248dafcc297f3a2c5465b6e0dba
|
P 6ec8883c366532948e619830ff7d9f63b79fc08b
|
||||||
R 6ad171a801eb8b84ac88c34ad2f04d27
|
R 83e2318d245416067a9bf94d66214656
|
||||||
U drh
|
U drh
|
||||||
Z 23a34f97623654d558cd9b041aa96deb
|
Z 7b8f65438258711df695628d2834385c
|
||||||
|
|||||||
@@ -1 +1 @@
|
|||||||
6ec8883c366532948e619830ff7d9f63b79fc08b
|
bb84d27eda64479d65b13fbbcaeef6a00da4d103
|
||||||
23
src/where.c
23
src/where.c
@@ -16,7 +16,7 @@
|
|||||||
** so is applicable. Because this module is responsible for selecting
|
** so is applicable. Because this module is responsible for selecting
|
||||||
** indices, you might also think of this module as the "query optimizer".
|
** indices, you might also think of this module as the "query optimizer".
|
||||||
**
|
**
|
||||||
** $Id: where.c,v 1.177 2005/09/19 21:05:49 drh Exp $
|
** $Id: where.c,v 1.178 2005/09/20 08:47:20 drh Exp $
|
||||||
*/
|
*/
|
||||||
#include "sqliteInt.h"
|
#include "sqliteInt.h"
|
||||||
|
|
||||||
@@ -232,7 +232,7 @@ static int whereClauseInsert(WhereClause *pWC, Expr *p, int flags){
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
** This routine identifies subexpressions in the WHERE clause where
|
** This routine identifies subexpressions in the WHERE clause where
|
||||||
** each subexpression is separate by the AND operator or some other
|
** each subexpression is separated by the AND operator or some other
|
||||||
** operator specified in the op parameter. The WhereClause structure
|
** operator specified in the op parameter. The WhereClause structure
|
||||||
** is filled with pointers to subexpressions. For example:
|
** is filled with pointers to subexpressions. For example:
|
||||||
**
|
**
|
||||||
@@ -281,7 +281,7 @@ static Bitmask getMask(ExprMaskSet *pMaskSet, int iCursor){
|
|||||||
**
|
**
|
||||||
** There is one cursor per table in the FROM clause. The number of
|
** There is one cursor per table in the FROM clause. The number of
|
||||||
** tables in the FROM clause is limited by a test early in the
|
** tables in the FROM clause is limited by a test early in the
|
||||||
** sqlite3WhereBegin() routien. So we know that the pMaskSet->ix[]
|
** sqlite3WhereBegin() routine. So we know that the pMaskSet->ix[]
|
||||||
** array will never overflow.
|
** array will never overflow.
|
||||||
*/
|
*/
|
||||||
static void createMask(ExprMaskSet *pMaskSet, int iCursor){
|
static void createMask(ExprMaskSet *pMaskSet, int iCursor){
|
||||||
@@ -532,7 +532,7 @@ static int isLikeOrGlob(
|
|||||||
** to the standard form of "X <op> <expr>". If the expression is of
|
** to the standard form of "X <op> <expr>". If the expression is of
|
||||||
** the form "X <op> Y" where both X and Y are columns, then the original
|
** the form "X <op> Y" where both X and Y are columns, then the original
|
||||||
** expression is unchanged and a new virtual expression of the form
|
** expression is unchanged and a new virtual expression of the form
|
||||||
** "Y <op> X" is added to the WHERE clause.
|
** "Y <op> X" is added to the WHERE clause and analyzed separately.
|
||||||
*/
|
*/
|
||||||
static void exprAnalyze(
|
static void exprAnalyze(
|
||||||
SrcList *pSrc, /* the FROM clause */
|
SrcList *pSrc, /* the FROM clause */
|
||||||
@@ -847,7 +847,7 @@ static int sortableByRowid(
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** Prepare a crude estimate of the logorithm of the input value.
|
** Prepare a crude estimate of the logarithm of the input value.
|
||||||
** The results need not be exact. This is only used for estimating
|
** The results need not be exact. This is only used for estimating
|
||||||
** the total cost of performing operatings with O(logN) or O(NlogN)
|
** the total cost of performing operatings with O(logN) or O(NlogN)
|
||||||
** complexity. Because N is just a guess, it is no great tragedy if
|
** complexity. Because N is just a guess, it is no great tragedy if
|
||||||
@@ -1106,11 +1106,12 @@ static double bestIndex(
|
|||||||
** of a LEFT OUTER JOIN. In (1), the term is not disabled.
|
** of a LEFT OUTER JOIN. In (1), the term is not disabled.
|
||||||
**
|
**
|
||||||
** Disabling a term causes that term to not be tested in the inner loop
|
** Disabling a term causes that term to not be tested in the inner loop
|
||||||
** of the join. Disabling is an optimization. We would get the correct
|
** of the join. Disabling is an optimization. When terms are satisfied
|
||||||
** results if nothing were ever disabled, but joins might run a little
|
** by indices, we disable them to prevent redundant tests in the inner
|
||||||
** slower. The trick is to disable as much as we can without disabling
|
** loop. We would get the correct results if nothing were ever disabled,
|
||||||
** too much. If we disabled in (1), we'd get the wrong answer.
|
** but joins might run a little slower. The trick is to disable as much
|
||||||
** See ticket #813.
|
** as we can without disabling too much. If we disabled in (1), we'd get
|
||||||
|
** the wrong answer. See ticket #813.
|
||||||
*/
|
*/
|
||||||
static void disableTerm(WhereLevel *pLevel, WhereTerm *pTerm){
|
static void disableTerm(WhereLevel *pLevel, WhereTerm *pTerm){
|
||||||
if( pTerm
|
if( pTerm
|
||||||
@@ -1425,7 +1426,7 @@ WhereInfo *sqlite3WhereBegin(
|
|||||||
/* Analyze all of the subexpressions. Note that exprAnalyze() might
|
/* Analyze all of the subexpressions. Note that exprAnalyze() might
|
||||||
** add new virtual terms onto the end of the WHERE clause. We do not
|
** add new virtual terms onto the end of the WHERE clause. We do not
|
||||||
** want to analyze these virtual terms, so start analyzing at the end
|
** want to analyze these virtual terms, so start analyzing at the end
|
||||||
** and work forward so that they added virtual terms are never processed.
|
** and work forward so that the added virtual terms are never processed.
|
||||||
*/
|
*/
|
||||||
for(i=0; i<pTabList->nSrc; i++){
|
for(i=0; i<pTabList->nSrc; i++){
|
||||||
createMask(&maskSet, pTabList->a[i].iCursor);
|
createMask(&maskSet, pTabList->a[i].iCursor);
|
||||||
|
|||||||
Reference in New Issue
Block a user