OpenCoverage

where.c

Absolute File Name:/home/opencoverage/opencoverage/guest-scripts/sqlite/src/src/where.c
Switch to Source codePreprocessed file
LineSourceCount
1typedef struct HiddenIndexInfo HiddenIndexInfo;-
2struct HiddenIndexInfo {-
3 WhereClause *pWC;-
4 Parse *pParse;-
5};-
6-
7-
8static int whereLoopResize(sqlite3*, WhereLoop*, int);-
9-
10-
11-
12 int sqlite3WhereTrace = 0;-
13-
14-
15-
16-
17-
18-
19LogEst sqlite3WhereOutputRowCount(WhereInfo *pWInfo){-
20 return
executed 489286 times by 435 tests: return pWInfo->nRowOut;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->nRowOut;
executed 489286 times by 435 tests: return pWInfo->nRowOut;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
489286
21}-
22-
23-
24-
25-
26-
27int sqlite3WhereIsDistinct(WhereInfo *pWInfo){-
28 return
executed 348 times by 1 test: return pWInfo->eDistinct;
Executed by:
  • Self test (438)
pWInfo->eDistinct;
executed 348 times by 1 test: return pWInfo->eDistinct;
Executed by:
  • Self test (438)
348
29}-
30-
31-
32-
33-
34-
35int sqlite3WhereIsOrdered(WhereInfo *pWInfo){-
36 return
executed 80481 times by 435 tests: return pWInfo->nOBSat;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->nOBSat;
executed 80481 times by 435 tests: return pWInfo->nOBSat;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
80481
37}-
38int sqlite3WhereOrderByLimitOptLabel(WhereInfo *pWInfo){-
39 WhereLevel *pInner;-
40 if( !pWInfo->bOrderedInnerLoop
!pWInfo->bOrderedInnerLoopDescription
TRUEevaluated 57742 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 51 times by 1 test
Evaluated by:
  • Self test (438)
){
51-57742
41-
42-
43 return
executed 57742 times by 435 tests: return pWInfo->iContinue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->iContinue;
executed 57742 times by 435 tests: return pWInfo->iContinue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
57742
44 }-
45 pInner = &pWInfo->a[pWInfo->nLevel-1];-
46 -
47 ((void) (0))-
48 ;-
49 return
executed 51 times by 1 test: return pInner->addrNxt;
Executed by:
  • Self test (438)
pInner->addrNxt;
executed 51 times by 1 test: return pInner->addrNxt;
Executed by:
  • Self test (438)
51
50}-
51-
52-
53-
54-
55-
56int sqlite3WhereContinueLabel(WhereInfo *pWInfo){-
57 -
58 ((void) (0))-
59 ;-
60 return
executed 248618 times by 435 tests: return pWInfo->iContinue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->iContinue;
executed 248618 times by 435 tests: return pWInfo->iContinue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
248618
61}-
62-
63-
64-
65-
66-
67int sqlite3WhereBreakLabel(WhereInfo *pWInfo){-
68 return
executed 249683 times by 435 tests: return pWInfo->iBreak;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->iBreak;
executed 249683 times by 435 tests: return pWInfo->iBreak;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
249683
69}-
70int sqlite3WhereOkOnePass(WhereInfo *pWInfo, int *aiCur){-
71 memcpy(aiCur, pWInfo->aiCurOnePass, sizeof(int)*2);-
72-
73-
74-
75-
76-
77-
78-
79 return
executed 40356 times by 378 tests: return pWInfo->eOnePass;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
pWInfo->eOnePass;
executed 40356 times by 378 tests: return pWInfo->eOnePass;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
40356
80}-
81-
82-
83-
84-
85static void whereOrMove(WhereOrSet *pDest, WhereOrSet *pSrc){-
86 pDest->n = pSrc->n;-
87 memcpy(pDest->a, pSrc->a, pDest->n*sizeof(pDest->a[0]));-
88}
executed 18177 times by 1 test: end of block
Executed by:
  • Self test (438)
18177
89static int whereOrInsert(-
90 WhereOrSet *pSet,-
91 Bitmask prereq,-
92 LogEst rRun,-
93 LogEst nOut-
94){-
95 u16 i;-
96 WhereOrCost *p;-
97 for(i=pSet->n, p=pSet->a; i>0
i>0Description
TRUEevaluated 12221 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 33817 times by 1 test
Evaluated by:
  • Self test (438)
; i--, p++){
12221-33817
98 if( rRun<=p->rRun
rRun<=p->rRunDescription
TRUEevaluated 5875 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6346 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(prereq & p->prereq)==prereqDescription
TRUEevaluated 5840 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
prereq & p->prereq)==prereq
(prereq & p->prereq)==prereqDescription
TRUEevaluated 5840 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
){
35-6346
99 goto
executed 5840 times by 1 test: goto whereOrInsert_done;
Executed by:
  • Self test (438)
whereOrInsert_done;
executed 5840 times by 1 test: goto whereOrInsert_done;
Executed by:
  • Self test (438)
5840
100 }-
101 if( p->rRun<=rRun
p->rRun<=rRunDescription
TRUEevaluated 6359 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(p->prereq & p...eq)==p->prereqDescription
TRUEevaluated 6321 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 38 times by 1 test
Evaluated by:
  • Self test (438)
p->prereq & prereq)==p->prereq
(p->prereq & p...eq)==p->prereqDescription
TRUEevaluated 6321 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 38 times by 1 test
Evaluated by:
  • Self test (438)
){
22-6359
102 return
executed 6321 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 6321 times by 1 test: return 0;
Executed by:
  • Self test (438)
6321
103 }-
104 }
executed 60 times by 1 test: end of block
Executed by:
  • Self test (438)
60
105 if( pSet->n<3
pSet->n<3Description
TRUEevaluated 33816 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
){
1-33816
106 p = &pSet->a[pSet->n++];-
107 p->nOut = nOut;-
108 }
executed 33816 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
33816
109 p = pSet->a;-
110 for(i=1; i<pSet->n
i<pSet->nDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
; i++){
1-2
111 if( p->rRun>pSet->a[i].rRun
p->rRun>pSet->a[i].rRunDescription
TRUEnever evaluated
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
) p = pSet->a + i;
never executed: p = pSet->a + i;
0-2
112 }
executed 2 times by 1 test: end of block
Executed by:
  • Self test (438)
2
113 if( p->rRun<=rRun
p->rRun<=rRunDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
) return
executed 1 time by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 1 time by 1 test: return 0;
Executed by:
  • Self test (438)
0-1
114 }
never executed: end of block
0
115whereOrInsert_done:
code before this statement executed 33816 times by 1 test: whereOrInsert_done:
Executed by:
  • Self test (438)
33816
116 p->prereq = prereq;-
117 p->rRun = rRun;-
118 if( p->nOut>nOut
p->nOut>nOutDescription
TRUEevaluated 4885 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 34771 times by 1 test
Evaluated by:
  • Self test (438)
) p->nOut = nOut;
executed 4885 times by 1 test: p->nOut = nOut;
Executed by:
  • Self test (438)
4885-34771
119 return
executed 39656 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 39656 times by 1 test: return 1;
Executed by:
  • Self test (438)
39656
120}-
121-
122-
123-
124-
125-
126Bitmask sqlite3WhereGetMask(WhereMaskSet *pMaskSet, int iCursor){-
127 int i;-
128 -
129 ((void) (0))-
130 ;-
131 for(i=0; i<pMaskSet->n
i<pMaskSet->nDescription
TRUEevaluated 1973090 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 162712 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
162712-1973090
132 if( pMaskSet->ix[i]==iCursor
pMaskSet->ix[i]==iCursorDescription
TRUEevaluated 1313604 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 659486 times by 1 test
Evaluated by:
  • Self test (438)
){
659486-1313604
133 return
executed 1313604 times by 435 tests: return (((Bitmask)1)<<(i));
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
(((Bitmask)1)<<(i));
executed 1313604 times by 435 tests: return (((Bitmask)1)<<(i));
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
1313604
134 }-
135 }
executed 659486 times by 1 test: end of block
Executed by:
  • Self test (438)
659486
136 return
executed 162712 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 162712 times by 1 test: return 0;
Executed by:
  • Self test (438)
162712
137}-
138static void createMask(WhereMaskSet *pMaskSet, int iCursor){-
139 -
140 ((void) (0))-
141 ;-
142 pMaskSet->ix[pMaskSet->n++] = iCursor;-
143}
executed 279537 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
279537
144-
145-
146-
147-
148-
149-
150static WhereTerm *whereScanNext(WhereScan *pScan){-
151 int iCur;-
152 i16 iColumn;-
153 Expr *pX;-
154 WhereClause *pWC;-
155 WhereTerm *pTerm;-
156 int k = pScan->k;-
157-
158 -
159 ((void) (0))-
160 ;-
161 pWC = pScan->pWC;-
162 while(1){-
163 iColumn = pScan->aiColumn[pScan->iEquiv-1];-
164 iCur = pScan->aiCur[pScan->iEquiv-1];-
165 -
166 ((void) (0))-
167 ;-
168 do{-
169 for(pTerm=pWC->a+k; k<pWC->nTerm
k<pWC->nTermDescription
TRUEevaluated 1340311 times by 368 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 1017582 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; k++, pTerm++){
1017582-1340311
170 if( pTerm->leftCursor==iCur
pTerm->leftCursor==iCurDescription
TRUEevaluated 756518 times by 36 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (4)
  • Self test (40)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • ...
FALSEevaluated 583793 times by 360 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
583793-756518
171 && pTerm->u.leftColumn==iColumn
pTerm->u.leftColumn==iColumnDescription
TRUEevaluated 160745 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 595773 times by 34 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (40)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • ...
160745-595773
172 && (iColumn!=(-2)
iColumn!=(-2)Description
TRUEevaluated 160665 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 80 times by 1 test
Evaluated by:
  • Self test (438)
80-160665
173 || sqlite3ExprCompareSkip(pTerm->pExpr->pLeft,
sqlite3ExprCom...xExpr,iCur)==0Description
TRUEevaluated 58 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
22-58
174 pScan->pIdxExpr,iCur)==0
sqlite3ExprCom...xExpr,iCur)==0Description
TRUEevaluated 58 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
)
22-58
175 && (pScan->iEquiv<=1
pScan->iEquiv<=1Description
TRUEevaluated 153550 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 7173 times by 1 test
Evaluated by:
  • Self test (438)
|| !(((pTerm->pExpr)->flags&(0x000001))!=0)
!(((pTerm->pEx...0x000001))!=0)Description
TRUEevaluated 7161 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
)
12-153550
176 ){-
177 if( (
(pTerm->eOperator & 0x0800)!=0Description
TRUEevaluated 14154 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 146557 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
pTerm->eOperator & 0x0800)!=0
(pTerm->eOperator & 0x0800)!=0Description
TRUEevaluated 14154 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 146557 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
14154-146557
178 && pScan->nEquiv<((int)(sizeof(pScan->aiCur)/sizeof(pScan->aiCur[0])))
pScan->nEquiv<...n->aiCur[0])))Description
TRUEevaluated 14154 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-14154
179 && (
(pX = sqlite3E...ght))->op==158Description
TRUEevaluated 14150 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
pX = sqlite3ExprSkipCollate(pTerm->pExpr->pRight))->op==158
(pX = sqlite3E...ght))->op==158Description
TRUEevaluated 14150 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
4-14150
180 ){-
181 int j;-
182 for(j=0; j<pScan->nEquiv
j<pScan->nEquivDescription
TRUEevaluated 14729 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7114 times by 1 test
Evaluated by:
  • Self test (438)
; j++){
7114-14729
183 if( pScan->aiCur[j]==pX->iTable
pScan->aiCur[j]==pX->iTableDescription
TRUEevaluated 7108 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7621 times by 1 test
Evaluated by:
  • Self test (438)
7108-7621
184 && pScan->aiColumn[j]==pX->iColumn
pScan->aiColum...]==pX->iColumnDescription
TRUEevaluated 7036 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 72 times by 1 test
Evaluated by:
  • Self test (438)
){
72-7036
185 break;
executed 7036 times by 1 test: break;
Executed by:
  • Self test (438)
7036
186 }-
187 }
executed 7693 times by 1 test: end of block
Executed by:
  • Self test (438)
7693
188 if( j==pScan->nEquiv
j==pScan->nEquivDescription
TRUEevaluated 7114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7036 times by 1 test
Evaluated by:
  • Self test (438)
){
7036-7114
189 pScan->aiCur[j] = pX->iTable;-
190 pScan->aiColumn[j] = pX->iColumn;-
191 pScan->nEquiv++;-
192 }
executed 7114 times by 1 test: end of block
Executed by:
  • Self test (438)
7114
193 }
executed 14150 times by 1 test: end of block
Executed by:
  • Self test (438)
14150
194 if( (
(pTerm->eOpera...an->opMask)!=0Description
TRUEevaluated 131301 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 29410 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & pScan->opMask)!=0
(pTerm->eOpera...an->opMask)!=0Description
TRUEevaluated 131301 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 29410 times by 1 test
Evaluated by:
  • Self test (438)
){
29410-131301
195-
196 if( pScan->zCollName
pScan->zCollNameDescription
TRUEevaluated 69769 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 61532 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
&& (
(pTerm->eOperator & 0x0100)==0Description
TRUEevaluated 69486 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 283 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & 0x0100)==0
(pTerm->eOperator & 0x0100)==0Description
TRUEevaluated 69486 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 283 times by 1 test
Evaluated by:
  • Self test (438)
){
283-69769
197 CollSeq *pColl;-
198 Parse *pParse = pWC->pWInfo->pParse;-
199 pX = pTerm->pExpr;-
200 if( !sqlite3IndexAffinityOk(pX, pScan->idxaff)
!sqlite3IndexA...pScan->idxaff)Description
TRUEevaluated 937 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 68549 times by 1 test
Evaluated by:
  • Self test (438)
){
937-68549
201 continue;
executed 937 times by 1 test: continue;
Executed by:
  • Self test (438)
937
202 }-
203 -
204 ((void) (0))-
205 ;-
206 pColl = sqlite3BinaryCompareCollSeq(pParse,-
207 pX->pLeft, pX->pRight);-
208 if( pColl==0
pColl==0Description
TRUEevaluated 2149 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 66400 times by 1 test
Evaluated by:
  • Self test (438)
) pColl = pParse->db->pDfltColl;
executed 2149 times by 1 test: pColl = pParse->db->pDfltColl;
Executed by:
  • Self test (438)
2149-66400
209 if( sqlite3StrICmp(pColl->zName, pScan->zCollName)
sqlite3StrICmp...an->zCollName)Description
TRUEevaluated 103 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 68446 times by 1 test
Evaluated by:
  • Self test (438)
){
103-68446
210 continue;
executed 103 times by 1 test: continue;
Executed by:
  • Self test (438)
103
211 }-
212 }
executed 68446 times by 1 test: end of block
Executed by:
  • Self test (438)
68446
213 if( (
(pTerm->eOpera...02|0x0080))!=0Description
TRUEevaluated 80231 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 50030 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & (0x0002|0x0080))!=0
(pTerm->eOpera...02|0x0080))!=0Description
TRUEevaluated 80231 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 50030 times by 1 test
Evaluated by:
  • Self test (438)
50030-80231
214 && (
(pX = pTerm->p...ight)->op==158Description
TRUEevaluated 14737 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 65494 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
pX = pTerm->pExpr->pRight)->op==158
(pX = pTerm->p...ight)->op==158Description
TRUEevaluated 14737 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 65494 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
14737-65494
215 && pX->iTable==pScan->aiCur[0]
pX->iTable==pScan->aiCur[0]Description
TRUEevaluated 6917 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7820 times by 1 test
Evaluated by:
  • Self test (438)
6917-7820
216 && pX->iColumn==pScan->aiColumn[0]
pX->iColumn==p...n->aiColumn[0]Description
TRUEevaluated 6912 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
5-6912
217 ){-
218 ;-
219 continue;
executed 6912 times by 1 test: continue;
Executed by:
  • Self test (438)
6912
220 }-
221 pScan->pWC = pWC;-
222 pScan->k = k+1;-
223 return
executed 123349 times by 30 tests: return pTerm;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
pTerm;
executed 123349 times by 30 tests: return pTerm;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
123349
224 }-
225 }
executed 29410 times by 1 test: end of block
Executed by:
  • Self test (438)
29410
226 }
executed 1209010 times by 366 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
1209010
227 pWC = pWC->pOuter;-
228 k = 0;-
229 }
executed 1017582 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
while( pWC!=0
pWC!=0Description
TRUEevaluated 124663 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 892919 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
);
124663-1017582
230 if( pScan->iEquiv>=pScan->nEquiv
pScan->iEquiv>=pScan->nEquivDescription
TRUEevaluated 885839 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 7080 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 885839 times by 435 tests: break;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
7080-885839
231 pWC = pScan->pOrigWC;-
232 k = 0;-
233 pScan->iEquiv++;-
234 }
executed 7080 times by 1 test: end of block
Executed by:
  • Self test (438)
7080
235 return
executed 885839 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
0;
executed 885839 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
885839
236}-
237static WhereTerm *whereScanInit(-
238 WhereScan *pScan,-
239 WhereClause *pWC,-
240 int iCur,-
241 int iColumn,-
242 u32 opMask,-
243 Index *pIdx-
244){-
245 pScan->pOrigWC = pWC;-
246 pScan->pWC = pWC;-
247 pScan->pIdxExpr = 0;-
248 pScan->idxaff = 0;-
249 pScan->zCollName = 0;-
250 if( pIdx
pIdxDescription
TRUEevaluated 540418 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 374621 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
374621-540418
251 int j = iColumn;-
252 iColumn = pIdx->aiColumn[j];-
253 if( iColumn==(-2)
iColumn==(-2)Description
TRUEevaluated 151 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 540267 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
151-540267
254 pScan->pIdxExpr = pIdx->aColExpr->a[j].pExpr;-
255 pScan->zCollName = pIdx->azColl[j];-
256 }
executed 151 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( iColumn==pIdx->pTable->iPKey
iColumn==pIdx->pTable->iPKeyDescription
TRUEevaluated 212090 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 328177 times by 356 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
){
151-328177
257 iColumn = (-1);-
258 }
executed 212090 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else if( iColumn>=0
iColumn>=0Description
TRUEevaluated 252094 times by 356 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
FALSEevaluated 76083 times by 333 tests
Evaluated by:
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • Self test (129)
  • Self test (130)
  • ...
){
76083-252094
259 pScan->idxaff = pIdx->pTable->aCol[iColumn].affinity;-
260 pScan->zCollName = pIdx->azColl[j];-
261 }
executed 252094 times by 356 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
252094
262 }
executed 540418 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else if( iColumn==(-2)
iColumn==(-2)Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 374620 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
1-540418
263 return
executed 1 time by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 1 time by 1 test: return 0;
Executed by:
  • Self test (438)
1
264 }-
265 pScan->opMask = opMask;-
266 pScan->k = 0;-
267 pScan->aiCur[0] = iCur;-
268 pScan->aiColumn[0] = iColumn;-
269 pScan->nEquiv = 1;-
270 pScan->iEquiv = 1;-
271 return
executed 915038 times by 435 tests: return whereScanNext(pScan);
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
whereScanNext(pScan);
executed 915038 times by 435 tests: return whereScanNext(pScan);
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
915038
272}-
273WhereTerm *sqlite3WhereFindTerm(-
274 WhereClause *pWC,-
275 int iCur,-
276 int iColumn,-
277 Bitmask notReady,-
278 u32 op,-
279 Index *pIdx-
280){-
281 WhereTerm *pResult = 0;-
282 WhereTerm *p;-
283 WhereScan scan;-
284-
285 p = whereScanInit(&scan, pWC, iCur, iColumn, op, pIdx);-
286 op &= 0x0002|0x0080;-
287 while( p
pDescription
TRUEevaluated 33541 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 350807 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
33541-350807
288 if( (
(p->prereqRight & notReady)==0Description
TRUEevaluated 30224 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 3317 times by 1 test
Evaluated by:
  • Self test (438)
p->prereqRight & notReady)==0
(p->prereqRight & notReady)==0Description
TRUEevaluated 30224 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 3317 times by 1 test
Evaluated by:
  • Self test (438)
){
3317-30224
289 if( p->prereqRight==0
p->prereqRight==0Description
TRUEevaluated 29888 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 336 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(p->eOperator&op)!=0Description
TRUEevaluated 29197 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 691 times by 1 test
Evaluated by:
  • Self test (438)
p->eOperator&op)!=0
(p->eOperator&op)!=0Description
TRUEevaluated 29197 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 691 times by 1 test
Evaluated by:
  • Self test (438)
){
336-29888
290 ;-
291 return
executed 29197 times by 30 tests: return p;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
p;
executed 29197 times by 30 tests: return p;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
29197
292 }-
293 if( pResult==0
pResult==0Description
TRUEevaluated 1025 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
) pResult = p;
executed 1025 times by 1 test: pResult = p;
Executed by:
  • Self test (438)
2-1025
294 }
executed 1027 times by 1 test: end of block
Executed by:
  • Self test (438)
1027
295 p = whereScanNext(&scan);-
296 }
executed 4344 times by 1 test: end of block
Executed by:
  • Self test (438)
4344
297 return
executed 350807 times by 435 tests: return pResult;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pResult;
executed 350807 times by 435 tests: return pResult;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
350807
298}-
299static int findIndexCol(-
300 Parse *pParse,-
301 ExprList *pList,-
302 int iBase,-
303 Index *pIdx,-
304 int iCol-
305){-
306 int i;-
307 const char *zColl = pIdx->azColl[iCol];-
308-
309 for(i=0; i<pList->nExpr
i<pList->nExprDescription
TRUEevaluated 111 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
35-111
310 Expr *p = sqlite3ExprSkipCollate(pList->a[i].pExpr);-
311 if( p->op==158
p->op==158Description
TRUEevaluated 104 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
7-104
312 && p->iColumn==pIdx->aiColumn[iCol]
p->iColumn==pI...aiColumn[iCol]Description
TRUEevaluated 37 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67 times by 1 test
Evaluated by:
  • Self test (438)
37-67
313 && p->iTable==iBase
p->iTable==iBaseDescription
TRUEevaluated 37 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-37
314 ){-
315 CollSeq *pColl = sqlite3ExprNNCollSeq(pParse, pList->a[i].pExpr);-
316 if( 0==sqlite3StrICmp(pColl->zName, zColl)
0==sqlite3StrI...>zName, zColl)Description
TRUEevaluated 31 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test (438)
){
6-31
317 return
executed 31 times by 1 test: return i;
Executed by:
  • Self test (438)
i;
executed 31 times by 1 test: return i;
Executed by:
  • Self test (438)
31
318 }-
319 }
executed 6 times by 1 test: end of block
Executed by:
  • Self test (438)
6
320 }
executed 80 times by 1 test: end of block
Executed by:
  • Self test (438)
80
321-
322 return
executed 35 times by 1 test: return -1;
Executed by:
  • Self test (438)
-1;
executed 35 times by 1 test: return -1;
Executed by:
  • Self test (438)
35
323}-
324-
325-
326-
327-
328static int indexColumnNotNull(Index *pIdx, int iCol){-
329 int j;-
330 -
331 ((void) (0))-
332 ;-
333 -
334 ((void) (0))-
335 ;-
336 j = pIdx->aiColumn[iCol];-
337 if( j>=0
j>=0Description
TRUEevaluated 312 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
){
24-312
338 return
executed 312 times by 1 test: return pIdx->pTable->aCol[j].notNull;
Executed by:
  • Self test (438)
pIdx->pTable->aCol[j].notNull;
executed 312 times by 1 test: return pIdx->pTable->aCol[j].notNull;
Executed by:
  • Self test (438)
312
339 }else if( j==(-1)
j==(-1)Description
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
){
2-22
340 return
executed 22 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 22 times by 1 test: return 1;
Executed by:
  • Self test (438)
22
341 }else{-
342 -
343 ((void) (0))-
344 ;-
345 return
executed 2 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 2 times by 1 test: return 0;
Executed by:
  • Self test (438)
2
346-
347 }-
348}-
349static int isDistinctRedundant(-
350 Parse *pParse,-
351 SrcList *pTabList,-
352 WhereClause *pWC,-
353 ExprList *pDistinct-
354){-
355 Table *pTab;-
356 Index *pIdx;-
357 int i;-
358 int iBase;-
359-
360-
361-
362-
363 if( pTabList->nSrc!=1
pTabList->nSrc!=1Description
TRUEevaluated 63 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 196 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 63 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 63 times by 1 test: return 0;
Executed by:
  • Self test (438)
63-196
364 iBase = pTabList->a[0].iCursor;-
365 pTab = pTabList->a[0].pTab;-
366-
367-
368-
369-
370-
371 for(i=0; i<pDistinct->nExpr
i<pDistinct->nExprDescription
TRUEevaluated 318 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 189 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
189-318
372 Expr *p = sqlite3ExprSkipCollate(pDistinct->a[i].pExpr);-
373 if( p->op==158
p->op==158Description
TRUEevaluated 274 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 44 times by 1 test
Evaluated by:
  • Self test (438)
&& p->iTable==iBase
p->iTable==iBaseDescription
TRUEevaluated 271 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
&& p->iColumn<0
p->iColumn<0Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 264 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 7 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 7 times by 1 test: return 1;
Executed by:
  • Self test (438)
3-274
374 }
executed 311 times by 1 test: end of block
Executed by:
  • Self test (438)
311
375 for(pIdx=pTab->pIndex; pIdx
pIdxDescription
TRUEevaluated 136 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 177 times by 1 test
Evaluated by:
  • Self test (438)
; pIdx=pIdx->pNext){
136-177
376 if( !((pIdx)->onError!=0)
!((pIdx)->onError!=0)Description
TRUEevaluated 73 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 63 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 73 times by 1 test: continue;
Executed by:
  • Self test (438)
63-73
377 for(i=0; i<pIdx->nKeyCol
i<pIdx->nKeyColDescription
TRUEevaluated 70 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
12-70
378 if( 0==sqlite3WhereFindTerm(pWC, iBase, i, ~(Bitmask)0, 0x0002, pIdx)
0==sqlite3Wher... 0x0002, pIdx)Description
TRUEevaluated 66 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
){
4-66
379 if( findIndexCol(pParse, pDistinct, iBase, pIdx, i)<0
findIndexCol(p...se, pIdx, i)<0Description
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 31 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 35 times by 1 test: break;
Executed by:
  • Self test (438)
31-35
380 if( indexColumnNotNull(pIdx, i)==0
indexColumnNotNull(pIdx, i)==0Description
TRUEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 16 times by 1 test: break;
Executed by:
  • Self test (438)
15-16
381 }
executed 15 times by 1 test: end of block
Executed by:
  • Self test (438)
15
382 }
executed 19 times by 1 test: end of block
Executed by:
  • Self test (438)
19
383 if( i==pIdx->nKeyCol
i==pIdx->nKeyColDescription
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 51 times by 1 test
Evaluated by:
  • Self test (438)
){
12-51
384-
385 return
executed 12 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 12 times by 1 test: return 1;
Executed by:
  • Self test (438)
12
386 }-
387 }
executed 51 times by 1 test: end of block
Executed by:
  • Self test (438)
51
388-
389 return
executed 177 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 177 times by 1 test: return 0;
Executed by:
  • Self test (438)
177
390}-
391-
392-
393-
394-
395-
396static LogEst estLog(LogEst N){-
397 return
executed 821273 times by 435 tests: return N<=10 ? 0 : sqlite3LogEst(N) - 33;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
N<=10
N<=10Description
TRUEevaluated 942 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 820331 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
? 0 : sqlite3LogEst(N) - 33;
executed 821273 times by 435 tests: return N<=10 ? 0 : sqlite3LogEst(N) - 33;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
942-821273
398}-
399static void translateColumnToCopy(-
400 Parse *pParse,-
401 int iStart,-
402 int iTabCur,-
403 int iRegister,-
404 int bIncrRowid-
405){-
406 Vdbe *v = pParse->pVdbe;-
407 VdbeOp *pOp = sqlite3VdbeGetOp(v, iStart);-
408 int iEnd = sqlite3VdbeCurrentAddr(v);-
409 if( pParse->db->mallocFailed
pParse->db->mallocFailedDescription
TRUEnever evaluated
FALSEevaluated 35367 times by 1 test
Evaluated by:
  • Self test (438)
) return;
never executed: return;
0-35367
410 for(; iStart<iEnd
iStart<iEndDescription
TRUEevaluated 229659 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35367 times by 1 test
Evaluated by:
  • Self test (438)
; iStart++, pOp++){
35367-229659
411 if( pOp->p1!=iTabCur
pOp->p1!=iTabCurDescription
TRUEevaluated 188002 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41657 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 188002 times by 1 test: continue;
Executed by:
  • Self test (438)
41657-188002
412 if( pOp->opcode==90
pOp->opcode==90Description
TRUEevaluated 40510 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1147 times by 1 test
Evaluated by:
  • Self test (438)
){
1147-40510
413 pOp->opcode = 78;-
414 pOp->p1 = pOp->p2 + iRegister;-
415 pOp->p2 = pOp->p3;-
416 pOp->p3 = 0;-
417 }
executed 40510 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( pOp->opcode==129
pOp->opcode==129Description
TRUEevaluated 9 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1138 times by 1 test
Evaluated by:
  • Self test (438)
){
9-40510
418 if( bIncrRowid
bIncrRowidDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test (438)
){
3-6
419-
420 pOp->opcode = 83;-
421 pOp->p1 = pOp->p2;-
422 pOp->p2 = 1;-
423 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
3
424 pOp->opcode = 73;-
425 pOp->p1 = 0;-
426 pOp->p3 = 0;-
427 }
executed 6 times by 1 test: end of block
Executed by:
  • Self test (438)
6
428 }-
429 }
executed 41657 times by 1 test: end of block
Executed by:
  • Self test (438)
41657
430}
executed 35367 times by 1 test: end of block
Executed by:
  • Self test (438)
35367
431static int termCanDriveIndex(-
432 WhereTerm *pTerm,-
433 struct SrcList_item *pSrc,-
434 Bitmask notReady-
435){-
436 char aff;-
437 if( pTerm->leftCursor!=pSrc->iCursor
pTerm->leftCur...=pSrc->iCursorDescription
TRUEevaluated 305767 times by 360 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 86476 times by 34 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (40)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • ...
) return
executed 305767 times by 360 tests: return 0;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
0;
executed 305767 times by 360 tests: return 0;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
86476-305767
438 if( (
(pTerm->eOpera...02|0x0080))==0Description
TRUEevaluated 18559 times by 3 tests
Evaluated by:
  • Self test (40)
  • Self test (438)
  • Self test (47)
FALSEevaluated 67917 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
pTerm->eOperator & (0x0002|0x0080))==0
(pTerm->eOpera...02|0x0080))==0Description
TRUEevaluated 18559 times by 3 tests
Evaluated by:
  • Self test (40)
  • Self test (438)
  • Self test (47)
FALSEevaluated 67917 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
) return
executed 18559 times by 3 tests: return 0;
Executed by:
  • Self test (40)
  • Self test (438)
  • Self test (47)
0;
executed 18559 times by 3 tests: return 0;
Executed by:
  • Self test (40)
  • Self test (438)
  • Self test (47)
18559-67917
439 if( (
(pSrc->fg.jointype & 0x0008)Description
TRUEevaluated 853 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67064 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
pSrc->fg.jointype & 0x0008)
(pSrc->fg.jointype & 0x0008)Description
TRUEevaluated 853 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67064 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
853-67064
440 && !(((pTerm->pExpr)->flags&(0x000001))!=0)
!(((pTerm->pEx...0x000001))!=0)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 850 times by 1 test
Evaluated by:
  • Self test (438)
3-850
441 && (
(pTerm->eOperator & 0x0080)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
pTerm->eOperator & 0x0080)
(pTerm->eOperator & 0x0080)Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-3
442 ){-
443-
444-
445-
446 return
executed 3 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 3 times by 1 test: return 0;
Executed by:
  • Self test (438)
3
447 }-
448 if( (
(pTerm->prereq...& notReady)!=0Description
TRUEevaluated 170 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67744 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
pTerm->prereqRight & notReady)!=0
(pTerm->prereq...& notReady)!=0Description
TRUEevaluated 170 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67744 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
) return
executed 170 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 170 times by 1 test: return 0;
Executed by:
  • Self test (438)
170-67744
449 if( pTerm->u.leftColumn<0
pTerm->u.leftColumn<0Description
TRUEevaluated 1152 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 66592 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
) return
executed 1152 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 1152 times by 1 test: return 0;
Executed by:
  • Self test (438)
1152-66592
450 aff = pSrc->pTab->aCol[pTerm->u.leftColumn].affinity;-
451 if( !sqlite3IndexAffinityOk(pTerm->pExpr, aff)
!sqlite3IndexA...m->pExpr, aff)Description
TRUEevaluated 463 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 66129 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
) return
executed 463 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 463 times by 1 test: return 0;
Executed by:
  • Self test (438)
463-66129
452 ;-
453 return
executed 66129 times by 33 tests: return 1;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
1;
executed 66129 times by 33 tests: return 1;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
66129
454}-
455static void constructAutomaticIndex(-
456 Parse *pParse,-
457 WhereClause *pWC,-
458 struct SrcList_item *pSrc,-
459 Bitmask notReady,-
460 WhereLevel *pLevel-
461){-
462 int nKeyCol;-
463 WhereTerm *pTerm;-
464 WhereTerm *pWCEnd;-
465 Index *pIdx;-
466 Vdbe *v;-
467 int addrInit;-
468 Table *pTable;-
469 int addrTop;-
470 int regRecord;-
471 int n;-
472 int i;-
473 int mxBitCol;-
474 CollSeq *pColl;-
475 WhereLoop *pLoop;-
476 char *zNotUsed;-
477 Bitmask idxCols;-
478 Bitmask extraCols;-
479 u8 sentWarning = 0;-
480 Expr *pPartial = 0;-
481 int iContinue = 0;-
482 struct SrcList_item *pTabItem;-
483 int addrCounter = 0;-
484 int regBase;-
485-
486-
487-
488 v = pParse->pVdbe;-
489 -
490 ((void) (0))-
491 ;-
492 addrInit = sqlite3VdbeAddOp0(v, 17); ;-
493-
494-
495-
496 nKeyCol = 0;-
497 pTable = pSrc->pTab;-
498 pWCEnd = &pWC->a[pWC->nTerm];-
499 pLoop = pLevel->pWLoop;-
500 idxCols = 0;-
501 for(pTerm=pWC->a; pTerm<pWCEnd
pTerm<pWCEndDescription
TRUEevaluated 88711 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
; pTerm++){
2859-88711
502 Expr *pExpr = pTerm->pExpr;-
503 -
504 ((void) (0))-
505-
506 -
507 ;-
508 if( pLoop->prereq==0
pLoop->prereq==0Description
TRUEevaluated 146 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 88565 times by 1 test
Evaluated by:
  • Self test (438)
146-88565
509 && (
(pTerm->wtFlags & 0x02)==0Description
TRUEevaluated 114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 32 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->wtFlags & 0x02)==0
(pTerm->wtFlags & 0x02)==0Description
TRUEevaluated 114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 32 times by 1 test
Evaluated by:
  • Self test (438)
32-114
510 && !(((pExpr)->flags&(0x000001))!=0)
!(((pExpr)->fl...0x000001))!=0)Description
TRUEevaluated 114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-114
511 && sqlite3ExprIsTableConstant(pExpr, pSrc->iCursor)
sqlite3ExprIsT...pSrc->iCursor)Description
TRUEevaluated 64 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 50 times by 1 test
Evaluated by:
  • Self test (438)
){
50-64
512 pPartial = sqlite3ExprAnd(pParse->db, pPartial,-
513 sqlite3ExprDup(pParse->db, pExpr, 0));-
514 }
executed 64 times by 1 test: end of block
Executed by:
  • Self test (438)
64
515 if( termCanDriveIndex(pTerm, pSrc, notReady)
termCanDriveIn...Src, notReady)Description
TRUEevaluated 3019 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 85692 times by 1 test
Evaluated by:
  • Self test (438)
){
3019-85692
516 int iCol = pTerm->u.leftColumn;-
517 Bitmask cMask = iCol>=((int)(sizeof(Bitmask)*8))
iCol>=((int)(s...f(Bitmask)*8))Description
TRUEnever evaluated
FALSEevaluated 3019 times by 1 test
Evaluated by:
  • Self test (438)
? (((Bitmask)1)<<(((int)(sizeof(Bitmask)*8))-1)) : (((Bitmask)1)<<(iCol));
0-3019
518 ;-
519 ;-
520 if( !sentWarning
!sentWarningDescription
TRUEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 160 times by 1 test
Evaluated by:
  • Self test (438)
){
160-2859
521 sqlite3_log((28 | (1<<8)),-
522 "automatic index on %s(%s)", pTable->zName,-
523 pTable->aCol[iCol].zName);-
524 sentWarning = 1;-
525 }
executed 2859 times by 1 test: end of block
Executed by:
  • Self test (438)
2859
526 if( (
(idxCols & cMask)==0Description
TRUEevaluated 3006 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
idxCols & cMask)==0
(idxCols & cMask)==0Description
TRUEevaluated 3006 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
){
13-3006
527 if( whereLoopResize(pParse->db, pLoop, nKeyCol+1)
whereLoopResiz...op, nKeyCol+1)Description
TRUEnever evaluated
FALSEevaluated 3006 times by 1 test
Evaluated by:
  • Self test (438)
){
0-3006
528 goto
never executed: goto end_auto_index_create;
end_auto_index_create;
never executed: goto end_auto_index_create;
0
529 }-
530 pLoop->aLTerm[nKeyCol++] = pTerm;-
531 idxCols |= cMask;-
532 }
executed 3006 times by 1 test: end of block
Executed by:
  • Self test (438)
3006
533 }
executed 3019 times by 1 test: end of block
Executed by:
  • Self test (438)
3019
534 }
executed 88711 times by 1 test: end of block
Executed by:
  • Self test (438)
88711
535 -
536 ((void) (0))-
537 ;-
538 pLoop->u.btree.nEq = pLoop->nLTerm = nKeyCol;-
539 pLoop->wsFlags = 0x00000001 | 0x00000040 | 0x00000200-
540 | 0x00004000;-
541 extraCols = pSrc->colUsed & (~idxCols | (((Bitmask)1)<<(((int)(sizeof(Bitmask)*8))-1)));-
542 mxBitCol = ((((
(((int)(sizeof...(pTable->nCol)Description
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
int)(sizeof(Bitmask)*8))-1)<(pTable->nCol)
(((int)(sizeof...(pTable->nCol)Description
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
?(((int)(sizeof(Bitmask)*8))-1):(pTable->nCol));
0-2859
543 ;-
544 ;-
545 for(i=0; i<mxBitCol
i<mxBitColDescription
TRUEevaluated 3899 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
2859-3899
546 if( extraCols & (((Bitmask)1)<<(i))
extraCols & ((...tmask)1)<<(i))Description
TRUEevaluated 722 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3177 times by 1 test
Evaluated by:
  • Self test (438)
) nKeyCol++;
executed 722 times by 1 test: nKeyCol++;
Executed by:
  • Self test (438)
722-3177
547 }
executed 3899 times by 1 test: end of block
Executed by:
  • Self test (438)
3899
548 if( pSrc->colUsed & (((Bitmask)1)<<(((int)(sizeof(Bitmask)*8))-1))
pSrc->colUsed ...tmask)*8))-1))Description
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
){
0-2859
549 nKeyCol += pTable->nCol - ((int)(sizeof(Bitmask)*8)) + 1;-
550 }
never executed: end of block
0
551-
552-
553 pIdx = sqlite3AllocateIndexObject(pParse->db, nKeyCol+1, 0, &zNotUsed);-
554 if( pIdx==0
pIdx==0Description
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
) goto
never executed: goto end_auto_index_create;
end_auto_index_create;
never executed: goto end_auto_index_create;
0-2859
555 pLoop->u.btree.pIndex = pIdx;-
556 pIdx->zName = "auto-index";-
557 pIdx->pTable = pTable;-
558 n = 0;-
559 idxCols = 0;-
560 for(pTerm=pWC->a; pTerm<pWCEnd
pTerm<pWCEndDescription
TRUEevaluated 88711 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
; pTerm++){
2859-88711
561 if( termCanDriveIndex(pTerm, pSrc, notReady)
termCanDriveIn...Src, notReady)Description
TRUEevaluated 3019 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 85692 times by 1 test
Evaluated by:
  • Self test (438)
){
3019-85692
562 int iCol = pTerm->u.leftColumn;-
563 Bitmask cMask = iCol>=((int)(sizeof(Bitmask)*8))
iCol>=((int)(s...f(Bitmask)*8))Description
TRUEnever evaluated
FALSEevaluated 3019 times by 1 test
Evaluated by:
  • Self test (438)
? (((Bitmask)1)<<(((int)(sizeof(Bitmask)*8))-1)) : (((Bitmask)1)<<(iCol));
0-3019
564 ;-
565 ;-
566 if( (
(idxCols & cMask)==0Description
TRUEevaluated 3006 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
idxCols & cMask)==0
(idxCols & cMask)==0Description
TRUEevaluated 3006 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
){
13-3006
567 Expr *pX = pTerm->pExpr;-
568 idxCols |= cMask;-
569 pIdx->aiColumn[n] = pTerm->u.leftColumn;-
570 pColl = sqlite3BinaryCompareCollSeq(pParse, pX->pLeft, pX->pRight);-
571 pIdx->azColl[n] = pColl
pCollDescription
TRUEevaluated 3005 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
? pColl->zName : sqlite3StrBINARY;
1-3005
572 n++;-
573 }
executed 3006 times by 1 test: end of block
Executed by:
  • Self test (438)
3006
574 }
executed 3019 times by 1 test: end of block
Executed by:
  • Self test (438)
3019
575 }
executed 88711 times by 1 test: end of block
Executed by:
  • Self test (438)
88711
576 -
577 ((void) (0))-
578 ;-
579-
580-
581-
582 for(i=0; i<mxBitCol
i<mxBitColDescription
TRUEevaluated 3899 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
2859-3899
583 if( extraCols & (((Bitmask)1)<<(i))
extraCols & ((...tmask)1)<<(i))Description
TRUEevaluated 722 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3177 times by 1 test
Evaluated by:
  • Self test (438)
){
722-3177
584 pIdx->aiColumn[n] = i;-
585 pIdx->azColl[n] = sqlite3StrBINARY;-
586 n++;-
587 }
executed 722 times by 1 test: end of block
Executed by:
  • Self test (438)
722
588 }
executed 3899 times by 1 test: end of block
Executed by:
  • Self test (438)
3899
589 if( pSrc->colUsed & (((Bitmask)1)<<(((int)(sizeof(Bitmask)*8))-1))
pSrc->colUsed ...tmask)*8))-1))Description
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
){
0-2859
590 for(i=((int)(sizeof(Bitmask)*8))-1; i<pTable->nCol
i<pTable->nColDescription
TRUEnever evaluated
FALSEnever evaluated
; i++){
0
591 pIdx->aiColumn[n] = i;-
592 pIdx->azColl[n] = sqlite3StrBINARY;-
593 n++;-
594 }
never executed: end of block
0
595 }
never executed: end of block
0
596 -
597 ((void) (0))-
598 ;-
599 pIdx->aiColumn[n] = (-1);-
600 pIdx->azColl[n] = sqlite3StrBINARY;-
601-
602-
603 -
604 ((void) (0))-
605 ;-
606 pLevel->iIdxCur = pParse->nTab++;-
607 sqlite3VdbeAddOp2(v, 112, pLevel->iIdxCur, nKeyCol+1);-
608 sqlite3VdbeSetP4KeyInfo(pParse, pIdx);-
609 ;-
610-
611-
612 pTabItem = &pWC->pWInfo->pTabList->a[pLevel->iFrom];-
613 if( pTabItem->fg.viaCoroutine
pTabItem->fg.viaCoroutineDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2856 times by 1 test
Evaluated by:
  • Self test (438)
){
3-2856
614 int regYield = pTabItem->regReturn;-
615 addrCounter = sqlite3VdbeAddOp2(v, 70, 0, 0);-
616 sqlite3VdbeAddOp3(v, 13, regYield, 0, pTabItem->addrFillSub);-
617 addrTop = sqlite3VdbeAddOp1(v, 14, regYield);-
618 ;-
619 ;-
620 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
3
621 addrTop = sqlite3VdbeAddOp1(v, 36, pLevel->iTabCur); ;-
622 }
executed 2856 times by 1 test: end of block
Executed by:
  • Self test (438)
2856
623 if( pPartial
pPartialDescription
TRUEevaluated 59 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2800 times by 1 test
Evaluated by:
  • Self test (438)
){
59-2800
624 iContinue = sqlite3VdbeMakeLabel(v);-
625 sqlite3ExprIfFalse(pParse, pPartial, iContinue, 0x10);-
626 pLoop->wsFlags |= 0x00020000;-
627 }
executed 59 times by 1 test: end of block
Executed by:
  • Self test (438)
59
628 regRecord = sqlite3GetTempReg(pParse);-
629 regBase = sqlite3GenerateIndexKey(-
630 pParse, pIdx, pLevel->iTabCur, regRecord, 0, 0, 0, 0-
631 );-
632 sqlite3VdbeAddOp2(v, 133, pLevel->iIdxCur, regRecord);-
633 sqlite3VdbeChangeP5(v, 0x10);-
634 if( pPartial
pPartialDescription
TRUEevaluated 59 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2800 times by 1 test
Evaluated by:
  • Self test (438)
) sqlite3VdbeResolveLabel(v, iContinue);
executed 59 times by 1 test: sqlite3VdbeResolveLabel(v, iContinue);
Executed by:
  • Self test (438)
59-2800
635 if( pTabItem->fg.viaCoroutine
pTabItem->fg.viaCoroutineDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2856 times by 1 test
Evaluated by:
  • Self test (438)
){
3-2856
636 sqlite3VdbeChangeP2(v, addrCounter, regBase+n);-
637 ;-
638 translateColumnToCopy(pParse, addrTop, pLevel->iTabCur,-
639 pTabItem->regResult, 1);-
640 sqlite3VdbeGoto(v, addrTop);-
641 pTabItem->fg.viaCoroutine = 0;-
642 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
3
643 sqlite3VdbeAddOp2(v, 5, pLevel->iTabCur, addrTop+1); ;-
644 }
executed 2856 times by 1 test: end of block
Executed by:
  • Self test (438)
2856
645 sqlite3VdbeChangeP5(v, 3);-
646 sqlite3VdbeJumpHere(v, addrTop);-
647 sqlite3ReleaseTempReg(pParse, regRecord);-
648-
649-
650 sqlite3VdbeJumpHere(v, addrInit);-
651-
652end_auto_index_create:
code before this statement executed 2859 times by 1 test: end_auto_index_create:
Executed by:
  • Self test (438)
2859
653 sqlite3ExprDelete(pParse->db, pPartial);-
654}
executed 2859 times by 1 test: end of block
Executed by:
  • Self test (438)
2859
655static sqlite3_index_info *allocateIndexInfo(-
656 Parse *pParse,-
657 WhereClause *pWC,-
658 Bitmask mUnusable,-
659 struct SrcList_item *pSrc,-
660 ExprList *pOrderBy,-
661 u16 *pmNoOmit-
662){-
663 int i, j;-
664 int nTerm;-
665 struct sqlite3_index_constraint *pIdxCons;-
666 struct sqlite3_index_orderby *pIdxOrderBy;-
667 struct sqlite3_index_constraint_usage *pUsage;-
668 struct HiddenIndexInfo *pHidden;-
669 WhereTerm *pTerm;-
670 int nOrderBy;-
671 sqlite3_index_info *pIdxInfo;-
672 u16 mNoOmit = 0;-
673-
674-
675-
676 for(i=nTerm=0, pTerm=pWC->a; i<pWC->nTerm
i<pWC->nTermDescription
TRUEevaluated 23178 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
; i++, pTerm++){
11464-23178
677 if( pTerm->leftCursor != pSrc->iCursor
pTerm->leftCur... pSrc->iCursorDescription
TRUEevaluated 2900 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20278 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 2900 times by 1 test: continue;
Executed by:
  • Self test (438)
2900-20278
678 if( pTerm->prereqRight & mUnusable
pTerm->prereqRight & mUnusableDescription
TRUEevaluated 31 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20247 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 31 times by 1 test: continue;
Executed by:
  • Self test (438)
31-20247
679 -
680 ((void) (0))-
681 ;-
682 ;-
683 ;-
684 ;-
685 ;-
686 if( (
(pTerm->eOpera... ~(0x0800))==0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & ~(0x0800))==0
(pTerm->eOpera... ~(0x0800))==0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 4 times by 1 test: continue;
Executed by:
  • Self test (438)
4-20243
687 if( pTerm->wtFlags & 0x00
pTerm->wtFlags & 0x00Description
TRUEnever evaluated
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
never executed: continue;
0-20243
688 -
689 ((void) (0))-
690 ;-
691 nTerm++;-
692 }
executed 20243 times by 1 test: end of block
Executed by:
  • Self test (438)
20243
693-
694-
695-
696-
697-
698 nOrderBy = 0;-
699 if( pOrderBy
pOrderByDescription
TRUEevaluated 174 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11290 times by 1 test
Evaluated by:
  • Self test (438)
){
174-11290
700 int n = pOrderBy->nExpr;-
701 for(i=0; i<n
i<nDescription
TRUEevaluated 187 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
113-187
702 Expr *pExpr = pOrderBy->a[i].pExpr;-
703 if( pExpr->op!=158
pExpr->op!=158Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 161 times by 1 test
Evaluated by:
  • Self test (438)
|| pExpr->iTable!=pSrc->iCursor
pExpr->iTable!=pSrc->iCursorDescription
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 126 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 61 times by 1 test: break;
Executed by:
  • Self test (438)
26-161
704 }
executed 126 times by 1 test: end of block
Executed by:
  • Self test (438)
126
705 if( i==n
i==nDescription
TRUEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 61 times by 1 test
Evaluated by:
  • Self test (438)
){
61-113
706 nOrderBy = n;-
707 }
executed 113 times by 1 test: end of block
Executed by:
  • Self test (438)
113
708 }
executed 174 times by 1 test: end of block
Executed by:
  • Self test (438)
174
709-
710-
711-
712 pIdxInfo = sqlite3DbMallocZero(pParse->db, sizeof(*pIdxInfo)-
713 + (sizeof(*pIdxCons) + sizeof(*pUsage))*nTerm-
714 + sizeof(*pIdxOrderBy)*nOrderBy + sizeof(*pHidden) );-
715 if( pIdxInfo==0
pIdxInfo==0Description
TRUEnever evaluated
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
){
0-11464
716 sqlite3ErrorMsg(pParse, "out of memory");-
717 return
never executed: return 0;
0;
never executed: return 0;
0
718 }-
719-
720-
721-
722-
723-
724-
725 pHidden = (struct HiddenIndexInfo*)&pIdxInfo[1];-
726 pIdxCons = (struct sqlite3_index_constraint*)&pHidden[1];-
727 pIdxOrderBy = (struct sqlite3_index_orderby*)&pIdxCons[nTerm];-
728 pUsage = (struct sqlite3_index_constraint_usage*)&pIdxOrderBy[nOrderBy];-
729 *(int*)&pIdxInfo->nConstraint = nTerm;-
730 *(int*)&pIdxInfo->nOrderBy = nOrderBy;-
731 *(struct sqlite3_index_constraint**)&pIdxInfo->aConstraint = pIdxCons;-
732 *(struct sqlite3_index_orderby**)&pIdxInfo->aOrderBy = pIdxOrderBy;-
733 *(struct sqlite3_index_constraint_usage**)&pIdxInfo->aConstraintUsage =-
734 pUsage;-
735-
736 pHidden->pWC = pWC;-
737 pHidden->pParse = pParse;-
738 for(i=j=0, pTerm=pWC->a; i<pWC->nTerm
i<pWC->nTermDescription
TRUEevaluated 23178 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
; i++, pTerm++){
11464-23178
739 u16 op;-
740 if( pTerm->leftCursor != pSrc->iCursor
pTerm->leftCur... pSrc->iCursorDescription
TRUEevaluated 2900 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20278 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 2900 times by 1 test: continue;
Executed by:
  • Self test (438)
2900-20278
741 if( pTerm->prereqRight & mUnusable
pTerm->prereqRight & mUnusableDescription
TRUEevaluated 31 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20247 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 31 times by 1 test: continue;
Executed by:
  • Self test (438)
31-20247
742 -
743 ((void) (0))-
744 ;-
745 ;-
746 ;-
747 ;-
748 ;-
749 if( (
(pTerm->eOpera... ~(0x0800))==0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & ~(0x0800))==0
(pTerm->eOpera... ~(0x0800))==0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 4 times by 1 test: continue;
Executed by:
  • Self test (438)
4-20243
750 if( pTerm->wtFlags & 0x00
pTerm->wtFlags & 0x00Description
TRUEnever evaluated
FALSEevaluated 20243 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
never executed: continue;
0-20243
751 if( (
(pSrc->fg.join...e & 0x0008)!=0Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20219 times by 1 test
Evaluated by:
  • Self test (438)
pSrc->fg.jointype & 0x0008)!=0
(pSrc->fg.join...e & 0x0008)!=0Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20219 times by 1 test
Evaluated by:
  • Self test (438)
24-20219
752 && !(((pTerm->pExpr)->flags&(0x000001))!=0)
!(((pTerm->pEx...0x000001))!=0)Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 19 times by 1 test
Evaluated by:
  • Self test (438)
5-19
753 && (
(pTerm->eOpera...x0080|0x0100))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & (0x0080|0x0100))
(pTerm->eOpera...x0080|0x0100))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
2-3
754 ){-
755-
756-
757-
758-
759-
760-
761 ;-
762 ;-
763 continue;
executed 3 times by 1 test: continue;
Executed by:
  • Self test (438)
3
764 }-
765 -
766 ((void) (0))-
767 ;-
768 pIdxCons[j].iColumn = pTerm->u.leftColumn;-
769 pIdxCons[j].iTermOffset = i;-
770 op = pTerm->eOperator & 0x1fff;-
771 if( op==0x0001
op==0x0001Description
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20218 times by 1 test
Evaluated by:
  • Self test (438)
) op = 0x0002;
executed 22 times by 1 test: op = 0x0002;
Executed by:
  • Self test (438)
22-20218
772 if( op==0x0040
op==0x0040Description
TRUEevaluated 139 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20101 times by 1 test
Evaluated by:
  • Self test (438)
){
139-20101
773 pIdxCons[j].op = pTerm->eMatchOp;-
774 }
executed 139 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( op & (0x0100|0x0080)
op & (0x0100|0x0080)Description
TRUEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20086 times by 1 test
Evaluated by:
  • Self test (438)
){
15-20086
775 if( op==0x0100
op==0x0100Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
){
5-10
776 pIdxCons[j].op = 71;-
777 }
executed 5 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
5
778 pIdxCons[j].op = 72;-
779 }
executed 10 times by 1 test: end of block
Executed by:
  • Self test (438)
10
780 }else{-
781 pIdxCons[j].op = (u8)op;-
782-
783-
784-
785 -
786 ((void) (0))-
787 ;-
788 -
789 ((void) (0))-
790 ;-
791 -
792 ((void) (0))-
793 ;-
794 -
795 ((void) (0))-
796 ;-
797 -
798 ((void) (0))-
799 ;-
800 -
801 ((void) (0))-
802 ;-
803-
804 if( op & ((0x0002<<(56 -53))|(0x0002<<(55 -53))|(0x0002<<(54 -53))|(0x0002<<(57 -53)))
op & ((0x0002<...02<<(57 -53)))Description
TRUEevaluated 245 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 19841 times by 1 test
Evaluated by:
  • Self test (438)
245-19841
805 && sqlite3ExprIsVector(pTerm->pExpr->pRight)
sqlite3ExprIsV...pExpr->pRight)Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 241 times by 1 test
Evaluated by:
  • Self test (438)
4-241
806 ){-
807 if( i<16
i<16Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
) mNoOmit |= (1 << i);
executed 4 times by 1 test: mNoOmit |= (1 << i);
Executed by:
  • Self test (438)
0-4
808 if( op==(0x0002<<(56 -53))
op==(0x0002<<(56 -53))Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
) pIdxCons[j].op = (0x0002<<(55 -53));
executed 3 times by 1 test: pIdxCons[j].op = (0x0002<<(55 -53));
Executed by:
  • Self test (438)
1-3
809 if( op==(0x0002<<(54 -53))
op==(0x0002<<(54 -53))Description
TRUEnever evaluated
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
) pIdxCons[j].op = (0x0002<<(57 -53));
never executed: pIdxCons[j].op = (0x0002<<(57 -53));
0-4
810 }
executed 4 times by 1 test: end of block
Executed by:
  • Self test (438)
4
811 }
executed 20086 times by 1 test: end of block
Executed by:
  • Self test (438)
20086
812-
813 j++;-
814 }
executed 20240 times by 1 test: end of block
Executed by:
  • Self test (438)
20240
815 for(i=0; i<nOrderBy
i<nOrderByDescription
TRUEevaluated 125 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
125-11464
816 Expr *pExpr = pOrderBy->a[i].pExpr;-
817 pIdxOrderBy[i].iColumn = pExpr->iColumn;-
818 pIdxOrderBy[i].desc = pOrderBy->a[i].sortOrder;-
819 }
executed 125 times by 1 test: end of block
Executed by:
  • Self test (438)
125
820-
821 *pmNoOmit = mNoOmit;-
822 return
executed 11464 times by 1 test: return pIdxInfo;
Executed by:
  • Self test (438)
pIdxInfo;
executed 11464 times by 1 test: return pIdxInfo;
Executed by:
  • Self test (438)
11464
823}-
824static int vtabBestIndex(Parse *pParse, Table *pTab, sqlite3_index_info *p){-
825 sqlite3_vtab *pVtab = sqlite3GetVTable(pParse->db, pTab)->pVtab;-
826 int rc;-
827-
828 ;-
829 rc = pVtab->pModule->xBestIndex(pVtab, p);-
830 ;-
831-
832 if( rc!=0
rc!=0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12101 times by 1 test
Evaluated by:
  • Self test (438)
){
1-12101
833 if( rc==7
rc==7Description
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
){
0-1
834 sqlite3OomFault(pParse->db);-
835 }
never executed: end of block
else if( !pVtab->zErrMsg
!pVtab->zErrMsgDescription
TRUEnever evaluated
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
){
0-1
836 sqlite3ErrorMsg(pParse, "%s", sqlite3ErrStr(rc));-
837 }
never executed: end of block
else{
0
838 sqlite3ErrorMsg(pParse, "%s", pVtab->zErrMsg);-
839 }
executed 1 time by 1 test: end of block
Executed by:
  • Self test (438)
1
840 }-
841 sqlite3_free(pVtab->zErrMsg);-
842 pVtab->zErrMsg = 0;-
843 return
executed 12102 times by 1 test: return pParse->nErr;
Executed by:
  • Self test (438)
pParse->nErr;
executed 12102 times by 1 test: return pParse->nErr;
Executed by:
  • Self test (438)
12102
844}-
845static LogEst whereRangeAdjust(WhereTerm *pTerm, LogEst nNew){-
846 LogEst nRet = nNew;-
847 if( pTerm
pTermDescription
TRUEevaluated 56274 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 25792 times by 1 test
Evaluated by:
  • Self test (438)
){
25792-56274
848 if( pTerm->truthProb<=0
pTerm->truthProb<=0Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 56269 times by 1 test
Evaluated by:
  • Self test (438)
){
5-56269
849 nRet += pTerm->truthProb;-
850 }
executed 5 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( (
(pTerm->wtFlags & 0x00)==0Description
TRUEevaluated 56269 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
pTerm->wtFlags & 0x00)==0
(pTerm->wtFlags & 0x00)==0Description
TRUEevaluated 56269 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-56269
851 nRet -= 20; -
852 ((void) (0))-
853 ;-
854 }
executed 56269 times by 1 test: end of block
Executed by:
  • Self test (438)
56269
855 }
executed 56274 times by 1 test: end of block
Executed by:
  • Self test (438)
56274
856 return
executed 82066 times by 1 test: return nRet;
Executed by:
  • Self test (438)
nRet;
executed 82066 times by 1 test: return nRet;
Executed by:
  • Self test (438)
82066
857}-
858static int whereRangeScanEst(-
859 Parse *pParse,-
860 WhereLoopBuilder *pBuilder,-
861 WhereTerm *pLower,-
862 WhereTerm *pUpper,-
863 WhereLoop *pLoop-
864){-
865 int rc = 0;-
866 int nOut = pLoop->nOut;-
867 LogEst nNew;-
868 (void)(pParse);-
869 (void)(pBuilder);-
870 -
871 ((void) (0))-
872 ;-
873-
874 -
875 ((void) (0))-
876 ;-
877 nNew = whereRangeAdjust(pLower, nOut);-
878 nNew = whereRangeAdjust(pUpper, nNew);-
879-
880-
881-
882-
883-
884-
885-
886 if( pLower
pLowerDescription
TRUEevaluated 28305 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12728 times by 1 test
Evaluated by:
  • Self test (438)
&& pLower->truthProb>0
pLower->truthProb>0Description
TRUEevaluated 28300 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
&& pUpper
pUpperDescription
TRUEevaluated 15241 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13059 times by 1 test
Evaluated by:
  • Self test (438)
&& pUpper->truthProb>0
pUpper->truthProb>0Description
TRUEevaluated 15241 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-28305
887 nNew -= 20;-
888 }
executed 15241 times by 1 test: end of block
Executed by:
  • Self test (438)
15241
889-
890 nOut -= (pLower!=0) + (pUpper!=0);-
891 if( nNew<10
nNew<10Description
TRUEevaluated 2646 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 38387 times by 1 test
Evaluated by:
  • Self test (438)
) nNew = 10;
executed 2646 times by 1 test: nNew = 10;
Executed by:
  • Self test (438)
2646-38387
892 if( nNew<nOut
nNew<nOutDescription
TRUEevaluated 40387 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 646 times by 1 test
Evaluated by:
  • Self test (438)
) nOut = nNew;
executed 40387 times by 1 test: nOut = nNew;
Executed by:
  • Self test (438)
646-40387
893-
894-
895-
896-
897-
898-
899 pLoop->nOut = (LogEst)nOut;-
900 return
executed 41033 times by 1 test: return rc;
Executed by:
  • Self test (438)
rc;
executed 41033 times by 1 test: return rc;
Executed by:
  • Self test (438)
41033
901}-
902static void whereLoopInit(WhereLoop *p){-
903 p->aLTerm = p->aLTermSpace;-
904 p->nLTerm = 0;-
905 p->nLSlot = ((int)(sizeof(p->aLTermSpace)/sizeof(p->aLTermSpace[0])));-
906 p->wsFlags = 0;-
907}
executed 1572403 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
1572403
908-
909-
910-
911-
912static void whereLoopClearUnion(sqlite3 *db, WhereLoop *p){-
913 if( p->wsFlags & (0x00000400|0x00004000)
p->wsFlags & (...00|0x00004000)Description
TRUEevaluated 73157 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 910094 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
73157-910094
914 if( (
(p->wsFlags & 0x00000400)!=0Description
TRUEevaluated 22473 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 50684 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
p->wsFlags & 0x00000400)!=0
(p->wsFlags & 0x00000400)!=0Description
TRUEevaluated 22473 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 50684 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
&& p->u.vtab.needFree
p->u.vtab.needFreeDescription
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22449 times by 1 test
Evaluated by:
  • Self test (438)
){
24-50684
915 sqlite3_free(p->u.vtab.idxStr);-
916 p->u.vtab.needFree = 0;-
917 p->u.vtab.idxStr = 0;-
918 }
executed 24 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( (
(p->wsFlags & 0x00004000)!=0Description
TRUEevaluated 50684 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 22449 times by 1 test
Evaluated by:
  • Self test (438)
p->wsFlags & 0x00004000)!=0
(p->wsFlags & 0x00004000)!=0Description
TRUEevaluated 50684 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 22449 times by 1 test
Evaluated by:
  • Self test (438)
&& p->u.btree.pIndex!=0
p->u.btree.pIndex!=0Description
TRUEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 47825 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
){
24-50684
919 sqlite3DbFree(db, p->u.btree.pIndex->zColAff);-
920 sqlite3DbFreeNN(db, p->u.btree.pIndex);-
921 p->u.btree.pIndex = 0;-
922 }
executed 2859 times by 1 test: end of block
Executed by:
  • Self test (438)
2859
923 }
executed 73157 times by 33 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
73157
924}
executed 983251 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
983251
925-
926-
927-
928-
929static void whereLoopClear(sqlite3 *db, WhereLoop *p){-
930 if( p->aLTerm!=p->aLTermSpace
p->aLTerm!=p->aLTermSpaceDescription
TRUEevaluated 213 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 619731 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) sqlite3DbFreeNN(db, p->aLTerm);
executed 213 times by 1 test: sqlite3DbFreeNN(db, p->aLTerm);
Executed by:
  • Self test (438)
213-619731
931 whereLoopClearUnion(db, p);-
932 whereLoopInit(p);-
933}
executed 619944 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
619944
934-
935-
936-
937-
938static int whereLoopResize(sqlite3 *db, WhereLoop *p, int n){-
939 WhereTerm **paNew;-
940 if( p->nLSlot>=n
p->nLSlot>=nDescription
TRUEevaluated 467794 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 241 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 467794 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
0;
executed 467794 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
241-467794
941 n = (n+7)&~7;-
942 paNew = sqlite3DbMallocRawNN(db, sizeof(p->aLTerm[0])*n);-
943 if( paNew==0
paNew==0Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 237 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 4 times by 1 test: return 7;
Executed by:
  • Self test (438)
7;
executed 4 times by 1 test: return 7;
Executed by:
  • Self test (438)
4-237
944 memcpy(paNew, p->aLTerm, sizeof(p->aLTerm[0])*p->nLSlot);-
945 if( p->aLTerm!=p->aLTermSpace
p->aLTerm!=p->aLTermSpaceDescription
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 213 times by 1 test
Evaluated by:
  • Self test (438)
) sqlite3DbFreeNN(db, p->aLTerm);
executed 24 times by 1 test: sqlite3DbFreeNN(db, p->aLTerm);
Executed by:
  • Self test (438)
24-213
946 p->aLTerm = paNew;-
947 p->nLSlot = n;-
948 return
executed 237 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 237 times by 1 test: return 0;
Executed by:
  • Self test (438)
237
949}-
950-
951-
952-
953-
954static int whereLoopXfer(sqlite3 *db, WhereLoop *pTo, WhereLoop *pFrom){-
955 whereLoopClearUnion(db, pTo);-
956 if( whereLoopResize(db, pTo, pFrom->nLTerm)
whereLoopResiz...pFrom->nLTerm)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 363305 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
2-363305
957 memset(&pTo->u, 0, sizeof(pTo->u));-
958 return
executed 2 times by 1 test: return 7;
Executed by:
  • Self test (438)
7;
executed 2 times by 1 test: return 7;
Executed by:
  • Self test (438)
2
959 }-
960 memcpy(pTo, pFrom, -
961 __builtin_offsetof (-
962 WhereLoop-
963 , -
964 nLSlot-
965 )-
966 );-
967 memcpy(pTo->aLTerm, pFrom->aLTerm, pTo->nLTerm*sizeof(pTo->aLTerm[0]));-
968 if( pFrom->wsFlags & 0x00000400
pFrom->wsFlags & 0x00000400Description
TRUEevaluated 11782 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 351523 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
11782-351523
969 pFrom->u.vtab.needFree = 0;-
970 }
executed 11782 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( (
(pFrom->wsFlag...0x00004000)!=0Description
TRUEevaluated 50670 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 300853 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pFrom->wsFlags & 0x00004000)!=0
(pFrom->wsFlag...0x00004000)!=0Description
TRUEevaluated 50670 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 300853 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
11782-300853
971 pFrom->u.btree.pIndex = 0;-
972 }
executed 50670 times by 33 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
50670
973 return
executed 363305 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
0;
executed 363305 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
363305
974}-
975-
976-
977-
978-
979static void whereLoopDelete(sqlite3 *db, WhereLoop *p){-
980 whereLoopClear(db, p);-
981 sqlite3DbFreeNN(db, p);-
982}
executed 314590 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
314590
983-
984-
985-
986-
987static void whereInfoFree(sqlite3 *db, WhereInfo *pWInfo){-
988 int i;-
989 -
990 ((void) (0))-
991 ;-
992 for(i=0; i<pWInfo->nLevel
i<pWInfo->nLevelDescription
TRUEevaluated 279346 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332515 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i++){
279346-332515
993 WhereLevel *pLevel = &pWInfo->a[i];-
994 if( pLevel->pWLoop
pLevel->pWLoopDescription
TRUEevaluated 278563 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 783 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(pLevel->pWLoo... & 0x00000800)Description
TRUEevaluated 679 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 277884 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pLevel->pWLoop->wsFlags & 0x00000800)
(pLevel->pWLoo... & 0x00000800)Description
TRUEevaluated 679 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 277884 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
679-278563
995 sqlite3DbFree(db, pLevel->u.in.aInLoop);-
996 }
executed 679 times by 1 test: end of block
Executed by:
  • Self test (438)
679
997 }
executed 279346 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
279346
998 sqlite3WhereClauseClear(&pWInfo->sWC);-
999 while( pWInfo->pLoops
pWInfo->pLoopsDescription
TRUEevaluated 311353 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332515 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
311353-332515
1000 WhereLoop *p = pWInfo->pLoops;-
1001 pWInfo->pLoops = p->pNextLoop;-
1002 whereLoopDelete(db, p);-
1003 }
executed 311353 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
311353
1004 sqlite3DbFreeNN(db, pWInfo);-
1005}
executed 332515 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
332515
1006static int whereLoopCheaperProperSubset(-
1007 const WhereLoop *pX,-
1008 const WhereLoop *pY-
1009){-
1010 int i, j;-
1011 if( pX->nLTerm-pX->nSkip >= pY->nLTerm-pY->nSkip
pX->nLTerm-pX-...Term-pY->nSkipDescription
TRUEevaluated 27925 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18917 times by 1 test
Evaluated by:
  • Self test (438)
){
18917-27925
1012 return
executed 27925 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 27925 times by 1 test: return 0;
Executed by:
  • Self test (438)
27925
1013 }-
1014 if( pY->nSkip > pX->nSkip
pY->nSkip > pX->nSkipDescription
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18882 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 35 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 35 times by 1 test: return 0;
Executed by:
  • Self test (438)
35-18882
1015 if( pX->rRun >= pY->rRun
pX->rRun >= pY->rRunDescription
TRUEevaluated 17620 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1262 times by 1 test
Evaluated by:
  • Self test (438)
){
1262-17620
1016 if( pX->rRun > pY->rRun
pX->rRun > pY->rRunDescription
TRUEevaluated 15588 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2032 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 15588 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 15588 times by 1 test: return 0;
Executed by:
  • Self test (438)
2032-15588
1017 if( pX->nOut > pY->nOut
pX->nOut > pY->nOutDescription
TRUEevaluated 620 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1412 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 620 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 620 times by 1 test: return 0;
Executed by:
  • Self test (438)
620-1412
1018 }
executed 1412 times by 1 test: end of block
Executed by:
  • Self test (438)
1412
1019 for(i=pX->nLTerm-1; i>=0
i>=0Description
TRUEevaluated 3108 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1692 times by 1 test
Evaluated by:
  • Self test (438)
; i--){
1692-3108
1020 if( pX->aLTerm[i]==0
pX->aLTerm[i]==0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3107 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 1 time by 1 test: continue;
Executed by:
  • Self test (438)
1-3107
1021 for(j=pY->nLTerm-1; j>=0
j>=0Description
TRUEevaluated 6884 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 982 times by 1 test
Evaluated by:
  • Self test (438)
; j--){
982-6884
1022 if( pY->aLTerm[j]==pX->aLTerm[i]
pY->aLTerm[j]==pX->aLTerm[i]Description
TRUEevaluated 2125 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4759 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 2125 times by 1 test: break;
Executed by:
  • Self test (438)
2125-4759
1023 }
executed 4759 times by 1 test: end of block
Executed by:
  • Self test (438)
4759
1024 if( j<0
j<0Description
TRUEevaluated 982 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2125 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 982 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 982 times by 1 test: return 0;
Executed by:
  • Self test (438)
982-2125
1025 }
executed 2125 times by 1 test: end of block
Executed by:
  • Self test (438)
2125
1026 if( (
(pX->wsFlags&0x00000040)!=0Description
TRUEevaluated 1490 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 202 times by 1 test
Evaluated by:
  • Self test (438)
pX->wsFlags&0x00000040)!=0
(pX->wsFlags&0x00000040)!=0Description
TRUEevaluated 1490 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 202 times by 1 test
Evaluated by:
  • Self test (438)
202-1490
1027 && (
(pY->wsFlags&0x00000040)==0Description
TRUEnever evaluated
FALSEevaluated 1490 times by 1 test
Evaluated by:
  • Self test (438)
pY->wsFlags&0x00000040)==0
(pY->wsFlags&0x00000040)==0Description
TRUEnever evaluated
FALSEevaluated 1490 times by 1 test
Evaluated by:
  • Self test (438)
){
0-1490
1028 return
never executed: return 0;
0;
never executed: return 0;
0
1029 }-
1030 return
executed 1692 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 1692 times by 1 test: return 1;
Executed by:
  • Self test (438)
1692
1031}-
1032static void whereLoopAdjustCost(const WhereLoop *p, WhereLoop *pTemplate){-
1033 if( (
(pTemplate->ws...0x00000200)==0Description
TRUEevaluated 327987 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 57699 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
pTemplate->wsFlags & 0x00000200)==0
(pTemplate->ws...0x00000200)==0Description
TRUEevaluated 327987 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 57699 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) return;
executed 327987 times by 435 tests: return;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
57699-327987
1034 for(; p
pDescription
TRUEevaluated 88395 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 57699 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
; p=p->pNextLoop){
57699-88395
1035 if( p->iTab!=pTemplate->iTab
p->iTab!=pTemplate->iTabDescription
TRUEevaluated 11311 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 77084 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 11311 times by 1 test: continue;
Executed by:
  • Self test (438)
11311-77084
1036 if( (
(p->wsFlags & 0x00000200)==0Description
TRUEevaluated 52819 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 24265 times by 1 test
Evaluated by:
  • Self test (438)
p->wsFlags & 0x00000200)==0
(p->wsFlags & 0x00000200)==0Description
TRUEevaluated 52819 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 24265 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 52819 times by 1 test: continue;
Executed by:
  • Self test (438)
24265-52819
1037 if( whereLoopCheaperProperSubset(p, pTemplate)
whereLoopCheap...(p, pTemplate)Description
TRUEevaluated 1688 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22577 times by 1 test
Evaluated by:
  • Self test (438)
){
1688-22577
1038-
1039-
1040 -
1041 ;-
1042 pTemplate->rRun = p->rRun;-
1043 pTemplate->nOut = p->nOut - 1;-
1044 }
executed 1688 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( whereLoopCheaperProperSubset(pTemplate, p)
whereLoopCheap...(pTemplate, p)Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22573 times by 1 test
Evaluated by:
  • Self test (438)
){
4-22573
1045-
1046-
1047 -
1048 ;-
1049 pTemplate->rRun = p->rRun;-
1050 pTemplate->nOut = p->nOut + 1;-
1051 }
executed 4 times by 1 test: end of block
Executed by:
  • Self test (438)
4
1052 }
executed 24265 times by 1 test: end of block
Executed by:
  • Self test (438)
24265
1053}
executed 57699 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
57699
1054static WhereLoop **whereLoopFindLesser(-
1055 WhereLoop **ppPrev,-
1056 const WhereLoop *pTemplate-
1057){-
1058 WhereLoop *p;-
1059 for(p=(*ppPrev); p
pDescription
TRUEevaluated 418966 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 318063 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ppPrev=&p->pNextLoop, p=*ppPrev){
318063-418966
1060 if( p->iTab!=pTemplate->iTab
p->iTab!=pTemplate->iTabDescription
TRUEevaluated 262690 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 156276 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
|| p->iSortIdx!=pTemplate->iSortIdx
p->iSortIdx!=p...late->iSortIdxDescription
TRUEevaluated 39439 times by 31 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • ...
FALSEevaluated 116837 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
){
39439-262690
1061-
1062-
1063-
1064 continue;
executed 302129 times by 31 tests: continue;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • ...
302129
1065 }-
1066-
1067-
1068-
1069 -
1070 ((void) (0))-
1071 -
1072 ;-
1073-
1074-
1075-
1076-
1077 -
1078 ((void) (0))-
1079 ;-
1080-
1081-
1082-
1083-
1084 if( (
(p->wsFlags & 0x00004000)!=0Description
TRUEevaluated 50011 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 66826 times by 1 test
Evaluated by:
  • Self test (438)
p->wsFlags & 0x00004000)!=0
(p->wsFlags & 0x00004000)!=0Description
TRUEevaluated 50011 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 66826 times by 1 test
Evaluated by:
  • Self test (438)
50011-66826
1085 && (
(pTemplate->nSkip)==0Description
TRUEevaluated 49984 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
pTemplate->nSkip)==0
(pTemplate->nSkip)==0Description
TRUEevaluated 49984 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
27-49984
1086 && (
(pTemplate->ws...0x00000200)!=0Description
TRUEevaluated 5584 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 44400 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
pTemplate->wsFlags & 0x00000200)!=0
(pTemplate->ws...0x00000200)!=0Description
TRUEevaluated 5584 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 44400 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
5584-44400
1087 && (
(pTemplate->ws...0x00000001)!=0Description
TRUEevaluated 4445 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1139 times by 1 test
Evaluated by:
  • Self test (438)
pTemplate->wsFlags & 0x00000001)!=0
(pTemplate->ws...0x00000001)!=0Description
TRUEevaluated 4445 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1139 times by 1 test
Evaluated by:
  • Self test (438)
1139-4445
1088 && (
(p->prereq & p...mplate->prereqDescription
TRUEevaluated 4367 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test (438)
p->prereq & pTemplate->prereq)==pTemplate->prereq
(p->prereq & p...mplate->prereqDescription
TRUEevaluated 4367 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 78 times by 1 test
Evaluated by:
  • Self test (438)
78-4367
1089 ){-
1090 break;
executed 4367 times by 1 test: break;
Executed by:
  • Self test (438)
4367
1091 }-
1092-
1093-
1094-
1095-
1096-
1097-
1098 if( (
(p->prereq & p...eq)==p->prereqDescription
TRUEevaluated 101614 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 10856 times by 1 test
Evaluated by:
  • Self test (438)
p->prereq & pTemplate->prereq)==p->prereq
(p->prereq & p...eq)==p->prereqDescription
TRUEevaluated 101614 times by 13 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (5)
FALSEevaluated 10856 times by 1 test
Evaluated by:
  • Self test (438)
10856-101614
1099 && p->rSetup<=pTemplate->rSetup
p->rSetup<=pTemplate->rSetupDescription
TRUEevaluated 75627 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
FALSEevaluated 25987 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (438)
  • Self test (47)
  • Self test (5)
25987-75627
1100 && p->rRun<=pTemplate->rRun
p->rRun<=pTemplate->rRunDescription
TRUEevaluated 25550 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
FALSEevaluated 50077 times by 1 test
Evaluated by:
  • Self test (438)
25550-50077
1101 && p->nOut<=pTemplate->nOut
p->nOut<=pTemplate->nOutDescription
TRUEevaluated 22325 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
FALSEevaluated 3225 times by 1 test
Evaluated by:
  • Self test (438)
3225-22325
1102 ){-
1103 return
executed 22325 times by 10 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
0;
executed 22325 times by 10 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
22325
1104 }-
1105-
1106-
1107-
1108-
1109-
1110-
1111 if( (
(p->prereq & p...mplate->prereqDescription
TRUEevaluated 83321 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (438)
  • Self test (47)
  • Self test (5)
FALSEevaluated 6824 times by 1 test
Evaluated by:
  • Self test (438)
p->prereq & pTemplate->prereq)==pTemplate->prereq
(p->prereq & p...mplate->prereqDescription
TRUEevaluated 83321 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (438)
  • Self test (47)
  • Self test (5)
FALSEevaluated 6824 times by 1 test
Evaluated by:
  • Self test (438)
6824-83321
1112 && p->rRun>=pTemplate->rRun
p->rRun>=pTemplate->rRunDescription
TRUEevaluated 47647 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35674 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (438)
  • Self test (47)
  • Self test (5)
35674-47647
1113 && p->nOut>=pTemplate->nOut
p->nOut>=pTemplate->nOutDescription
TRUEevaluated 47587 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 60 times by 1 test
Evaluated by:
  • Self test (438)
60-47587
1114 ){-
1115 -
1116 ((void) (0))-
1117 ;-
1118 break;
executed 47587 times by 1 test: break;
Executed by:
  • Self test (438)
47587
1119 }-
1120 }
executed 42558 times by 10 tests: end of block
Executed by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (34)
  • Self test (4)
  • Self test (438)
  • Self test (47)
  • Self test (5)
42558
1121 return
executed 370017 times by 435 tests: return ppPrev;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
ppPrev;
executed 370017 times by 435 tests: return ppPrev;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
370017
1122}-
1123static int whereLoopInsert(WhereLoopBuilder *pBuilder, WhereLoop *pTemplate){-
1124 WhereLoop **ppPrev, *p;-
1125 WhereInfo *pWInfo = pBuilder->pWInfo;-
1126 sqlite3 *db = pWInfo->pParse->db;-
1127 int rc;-
1128-
1129-
1130 if( pBuilder->iPlanLimit==0
pBuilder->iPlanLimit==0Description
TRUEnever evaluated
FALSEevaluated 447219 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
0-447219
1131 ;-
1132 if( pBuilder->pOrSet
pBuilder->pOrSetDescription
TRUEnever evaluated
FALSEnever evaluated
) pBuilder->pOrSet->n = 0;
never executed: pBuilder->pOrSet->n = 0;
0
1133 return
never executed: return 101;
101;
never executed: return 101;
0
1134 }-
1135 pBuilder->iPlanLimit--;-
1136-
1137-
1138-
1139-
1140 if( pBuilder->pOrSet!=0
pBuilder->pOrSet!=0Description
TRUEevaluated 61533 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 385686 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
61533-385686
1141 if( pTemplate->nLTerm
pTemplate->nLTermDescription
TRUEevaluated 30341 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 31192 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
){
30341-31192
1142-
1143-
1144-
1145-
1146 whereOrInsert(pBuilder->pOrSet, pTemplate->prereq, pTemplate->rRun,-
1147 pTemplate->nOut);-
1148-
1149-
1150-
1151-
1152-
1153-
1154 }
executed 30341 times by 1 test: end of block
Executed by:
  • Self test (438)
30341
1155 return
executed 61533 times by 2 tests: return 0;
Executed by:
  • Self test (34)
  • Self test (438)
0;
executed 61533 times by 2 tests: return 0;
Executed by:
  • Self test (34)
  • Self test (438)
61533
1156 }-
1157-
1158-
1159-
1160 whereLoopAdjustCost(pWInfo->pLoops, pTemplate);-
1161 ppPrev = whereLoopFindLesser(&pWInfo->pLoops, pTemplate);-
1162-
1163 if( ppPrev==0
ppPrev==0Description
TRUEevaluated 22320 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
FALSEevaluated 363366 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
22320-363366
1164 return
executed 22320 times by 10 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
0;
executed 22320 times by 10 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
22320
1165 }else{-
1166 p = *ppPrev;-
1167 }
executed 363366 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
363366
1168 if( p==0
p==0Description
TRUEevaluated 314649 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 48717 times by 1 test
Evaluated by:
  • Self test (438)
){
48717-314649
1169-
1170 *ppPrev = p = sqlite3DbMallocRawNN(db, sizeof(WhereLoop));-
1171 if( p==0
p==0Description
TRUEevaluated 59 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 314590 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 59 times by 1 test: return 7;
Executed by:
  • Self test (438)
7;
executed 59 times by 1 test: return 7;
Executed by:
  • Self test (438)
59-314590
1172 whereLoopInit(p);-
1173 p->pNextLoop = 0;-
1174 }
executed 314590 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
314590
1175-
1176-
1177-
1178 WhereLoop **ppTail = &p->pNextLoop;-
1179 WhereLoop *pToDel;-
1180 while( *
*ppTailDescription
TRUEevaluated 6656 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 45298 times by 1 test
Evaluated by:
  • Self test (438)
ppTail
*ppTailDescription
TRUEevaluated 6656 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 45298 times by 1 test
Evaluated by:
  • Self test (438)
){
6656-45298
1181 ppTail = whereLoopFindLesser(ppTail, pTemplate);-
1182 if( ppTail==0
ppTail==0Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6651 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 5 times by 1 test: break;
Executed by:
  • Self test (438)
5-6651
1183 pToDel = *ppTail;-
1184 if( pToDel==0
pToDel==0Description
TRUEevaluated 3414 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3237 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 3414 times by 1 test: break;
Executed by:
  • Self test (438)
3237-3414
1185 *ppTail = pToDel->pNextLoop;-
1186-
1187-
1188-
1189-
1190-
1191-
1192 whereLoopDelete(db, pToDel);-
1193 }
executed 3237 times by 1 test: end of block
Executed by:
  • Self test (438)
3237
1194 }
executed 48717 times by 1 test: end of block
Executed by:
  • Self test (438)
48717
1195 rc = whereLoopXfer(db, p, pTemplate);-
1196 if( (
(p->wsFlags & 0x00000400)==0Description
TRUEevaluated 351525 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 11782 times by 1 test
Evaluated by:
  • Self test (438)
p->wsFlags & 0x00000400)==0
(p->wsFlags & 0x00000400)==0Description
TRUEevaluated 351525 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 11782 times by 1 test
Evaluated by:
  • Self test (438)
){
11782-351525
1197 Index *pIndex = p->u.btree.pIndex;-
1198 if( pIndex
pIndexDescription
TRUEevaluated 298457 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 53068 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
&& pIndex->tnum==0
pIndex->tnum==0Description
TRUEevaluated 251433 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 47024 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
47024-298457
1199 p->u.btree.pIndex = 0;-
1200 }
executed 251433 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
251433
1201 }
executed 351525 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
351525
1202 return
executed 363307 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
rc;
executed 363307 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
363307
1203}-
1204static void whereLoopOutputAdjust(-
1205 WhereClause *pWC,-
1206 WhereLoop *pLoop,-
1207 LogEst nRow-
1208){-
1209 WhereTerm *pTerm, *pX;-
1210 Bitmask notAllowed = ~(pLoop->prereq|pLoop->maskSelf);-
1211 int i, j, k;-
1212 LogEst iReduce = 0;-
1213-
1214 -
1215 ((void) (0))-
1216 ;-
1217 for(i=pWC->nTerm, pTerm=pWC->a; i>0
i>0Description
TRUEevaluated 531583 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 311256 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i--, pTerm++){
311256-531583
1218 if( (
(pTerm->wtFlags & 0x02)!=0Description
TRUEevaluated 61528 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 470055 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
pTerm->wtFlags & 0x02)!=0
(pTerm->wtFlags & 0x02)!=0Description
TRUEevaluated 61528 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 470055 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
) break;
executed 61528 times by 1 test: break;
Executed by:
  • Self test (438)
61528-470055
1219 if( (
(pTerm->prereq...->maskSelf)==0Description
TRUEevaluated 106662 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
FALSEevaluated 363393 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
pTerm->prereqAll & pLoop->maskSelf)==0
(pTerm->prereq...->maskSelf)==0Description
TRUEevaluated 106662 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
FALSEevaluated 363393 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
) continue;
executed 106662 times by 4 tests: continue;
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
106662-363393
1220 if( (
(pTerm->prereq...notAllowed)!=0Description
TRUEevaluated 22004 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 341389 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
pTerm->prereqAll & notAllowed)!=0
(pTerm->prereq...notAllowed)!=0Description
TRUEevaluated 22004 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 341389 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
) continue;
executed 22004 times by 1 test: continue;
Executed by:
  • Self test (438)
22004-341389
1221 for(j=pLoop->nLTerm-1; j>=0
j>=0Description
TRUEevaluated 173165 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 250069 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
; j--){
173165-250069
1222 pX = pLoop->aLTerm[j];-
1223 if( pX==0
pX==0Description
TRUEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 173052 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 113 times by 1 test: continue;
Executed by:
  • Self test (438)
113-173052
1224 if( pX==pTerm
pX==pTermDescription
TRUEevaluated 69579 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 103473 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 69579 times by 1 test: break;
Executed by:
  • Self test (438)
69579-103473
1225 if( pX->iParent>=0
pX->iParent>=0Description
TRUEevaluated 51307 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 52166 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(&pWC->a[pX->iParent])==pTermDescription
TRUEevaluated 21741 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 29566 times by 1 test
Evaluated by:
  • Self test (438)
&pWC->a[pX->iParent])==pTerm
(&pWC->a[pX->iParent])==pTermDescription
TRUEevaluated 21741 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 29566 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 21741 times by 1 test: break;
Executed by:
  • Self test (438)
21741-52166
1226 }
executed 81732 times by 1 test: end of block
Executed by:
  • Self test (438)
81732
1227 if( j<0
j<0Description
TRUEevaluated 250069 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 91320 times by 1 test
Evaluated by:
  • Self test (438)
){
91320-250069
1228 if( pTerm->truthProb<=0
pTerm->truthProb<=0Description
TRUEevaluated 156 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 249913 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
){
156-249913
1229-
1230-
1231 pLoop->nOut += pTerm->truthProb;-
1232 }
executed 156 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
156
1233-
1234-
1235 pLoop->nOut--;-
1236 if( pTerm->eOperator&(0x0002|0x0080)
pTerm->eOperat...0x0002|0x0080)Description
TRUEevaluated 105082 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 144831 times by 361 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
){
105082-144831
1237 Expr *pRight = pTerm->pExpr->pRight;-
1238 ;-
1239 if( sqlite3ExprIsInteger(pRight, &k)
sqlite3ExprIsI...er(pRight, &k)Description
TRUEevaluated 48470 times by 3 tests
Evaluated by:
  • Self test (4)
  • Self test (438)
  • Self test (5)
FALSEevaluated 56612 times by 31 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • ...
&& k>=(-1)
k>=(-1)Description
TRUEevaluated 48398 times by 3 tests
Evaluated by:
  • Self test (4)
  • Self test (438)
  • Self test (5)
FALSEevaluated 72 times by 1 test
Evaluated by:
  • Self test (438)
&& k<=1
k<=1Description
TRUEevaluated 2515 times by 3 tests
Evaluated by:
  • Self test (4)
  • Self test (438)
  • Self test (5)
FALSEevaluated 45883 times by 1 test
Evaluated by:
  • Self test (438)
){
72-56612
1240 k = 10;-
1241 }
executed 2515 times by 3 tests: end of block
Executed by:
  • Self test (4)
  • Self test (438)
  • Self test (5)
else{
2515
1242 k = 20;-
1243 }
executed 102567 times by 31 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • ...
102567
1244 if( iReduce<k
iReduce<kDescription
TRUEevaluated 93861 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 11221 times by 10 tests
Evaluated by:
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
) iReduce = k;
executed 93861 times by 33 tests: iReduce = k;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
11221-93861
1245 }
executed 105082 times by 33 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
105082
1246 }
executed 249913 times by 366 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
249913
1247 }-
1248 }
executed 341389 times by 366 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
341389
1249 if( pLoop->nOut > nRow-iReduce
pLoop->nOut > nRow-iReduceDescription
TRUEevaluated 84354 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 288430 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) pLoop->nOut = nRow - iReduce;
executed 84354 times by 33 tests: pLoop->nOut = nRow - iReduce;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
84354-288430
1250}
executed 372784 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
372784
1251static int whereRangeVectorLen(-
1252 Parse *pParse,-
1253 int iCur,-
1254 Index *pIdx,-
1255 int nEq,-
1256 WhereTerm *pTerm-
1257){-
1258 int nCmp = sqlite3ExprVectorSize(pTerm->pExpr->pLeft);-
1259 int i;-
1260-
1261 nCmp = ((
(nCmp)<((pIdx->nColumn - nEq))Description
TRUEevaluated 23013 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18020 times by 1 test
Evaluated by:
  • Self test (438)
nCmp)<((pIdx->nColumn - nEq))
(nCmp)<((pIdx->nColumn - nEq))Description
TRUEevaluated 23013 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18020 times by 1 test
Evaluated by:
  • Self test (438)
?(nCmp):((pIdx->nColumn - nEq)));
18020-23013
1262 for(i=1; i<nCmp
i<nCmpDescription
TRUEevaluated 3317 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 39708 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
3317-39708
1263-
1264-
1265 char aff;-
1266 char idxaff = 0;-
1267 CollSeq *pColl;-
1268 Expr *pLhs = pTerm->pExpr->pLeft->x.pList->a[i].pExpr;-
1269 Expr *pRhs = pTerm->pExpr->pRight;-
1270 if( pRhs->flags & 0x000800
pRhs->flags & 0x000800Description
TRUEevaluated 1511 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1806 times by 1 test
Evaluated by:
  • Self test (438)
){
1511-1806
1271 pRhs = pRhs->x.pSelect->pEList->a[i].pExpr;-
1272 }
executed 1511 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
1511
1273 pRhs = pRhs->x.pList->a[i].pExpr;-
1274 }
executed 1806 times by 1 test: end of block
Executed by:
  • Self test (438)
1806
1275-
1276-
1277-
1278-
1279-
1280 if( pLhs->op!=158
pLhs->op!=158Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3313 times by 1 test
Evaluated by:
  • Self test (438)
4-3313
1281 || pLhs->iTable!=iCur
pLhs->iTable!=iCurDescription
TRUEnever evaluated
FALSEevaluated 3313 times by 1 test
Evaluated by:
  • Self test (438)
0-3313
1282 || pLhs->iColumn!=pIdx->aiColumn[i+nEq]
pLhs->iColumn!...iColumn[i+nEq]Description
TRUEevaluated 1277 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2036 times by 1 test
Evaluated by:
  • Self test (438)
1277-2036
1283 || pIdx->aSortOrder[i+nEq]!=pIdx->aSortOrder[nEq]
pIdx->aSortOrd...SortOrder[nEq]Description
TRUEevaluated 35 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2001 times by 1 test
Evaluated by:
  • Self test (438)
35-2001
1284 ){-
1285 break;
executed 1316 times by 1 test: break;
Executed by:
  • Self test (438)
1316
1286 }-
1287-
1288 ;-
1289 aff = sqlite3CompareAffinity(pRhs, sqlite3ExprAffinity(pLhs));-
1290 idxaff = sqlite3TableColumnAffinity(pIdx->pTable, pLhs->iColumn);-
1291 if( aff!=idxaff
aff!=idxaffDescription
TRUEevaluated 8 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1993 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 8 times by 1 test: break;
Executed by:
  • Self test (438)
8-1993
1292-
1293 pColl = sqlite3BinaryCompareCollSeq(pParse, pLhs, pRhs);-
1294 if( pColl==0
pColl==0Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1992 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 1 time by 1 test: break;
Executed by:
  • Self test (438)
1-1992
1295 if( sqlite3StrICmp(pColl->zName, pIdx->azColl[i+nEq])
sqlite3StrICmp...azColl[i+nEq])Description
TRUEnever evaluated
FALSEevaluated 1992 times by 1 test
Evaluated by:
  • Self test (438)
) break;
never executed: break;
0-1992
1296 }
executed 1992 times by 1 test: end of block
Executed by:
  • Self test (438)
1992
1297 return
executed 41033 times by 1 test: return i;
Executed by:
  • Self test (438)
i;
executed 41033 times by 1 test: return i;
Executed by:
  • Self test (438)
41033
1298}-
1299static int whereLoopAddBtreeIndex(-
1300 WhereLoopBuilder *pBuilder,-
1301 struct SrcList_item *pSrc,-
1302 Index *pProbe,-
1303 LogEst nInMul-
1304){-
1305 WhereInfo *pWInfo = pBuilder->pWInfo;-
1306 Parse *pParse = pWInfo->pParse;-
1307 sqlite3 *db = pParse->db;-
1308 WhereLoop *pNew;-
1309 WhereTerm *pTerm;-
1310 int opMask;-
1311 WhereScan scan;-
1312 Bitmask saved_prereq;-
1313 u16 saved_nLTerm;-
1314 u16 saved_nEq;-
1315 u16 saved_nBtm;-
1316 u16 saved_nTop;-
1317 u16 saved_nSkip;-
1318 u32 saved_wsFlags;-
1319 LogEst saved_nOut;-
1320 int rc = 0;-
1321 LogEst rSize;-
1322 LogEst rLogSize;-
1323 WhereTerm *pTop = 0, *pBtm = 0;-
1324-
1325 pNew = pBuilder->pNew;-
1326 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 535035 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 4 times by 1 test: return 7;
Executed by:
  • Self test (438)
7;
executed 4 times by 1 test: return 7;
Executed by:
  • Self test (438)
4-535035
1327 -
1328 ;-
1329-
1330 -
1331 ((void) (0))-
1332 ;-
1333 -
1334 ((void) (0))-
1335 ;-
1336 if( pNew->wsFlags & 0x00000020
pNew->wsFlags & 0x00000020Description
TRUEevaluated 13065 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 521970 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
13065-521970
1337 opMask = (0x0002<<(56 -53))|(0x0002<<(55 -53));-
1338 }
executed 13065 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
13065
1339 -
1340 ((void) (0))-
1341 ;-
1342 opMask = 0x0002|0x0001|(0x0002<<(54 -53))|(0x0002<<(57 -53))|(0x0002<<(56 -53))|(0x0002<<(55 -53))|0x0100|0x0080;-
1343 }
executed 521970 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
521970
1344 if( pProbe->bUnordered
pProbe->bUnorderedDescription
TRUEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 535019 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) opMask &= ~((0x0002<<(54 -53))|(0x0002<<(57 -53))|(0x0002<<(56 -53))|(0x0002<<(55 -53)));
executed 16 times by 1 test: opMask &= ~((0x0002<<(54 -53))|(0x0002<<(57 -53))|(0x0002<<(56 -53))|(0x0002<<(55 -53)));
Executed by:
  • Self test (438)
16-535019
1345-
1346 -
1347 ((void) (0))-
1348 ;-
1349-
1350 saved_nEq = pNew->u.btree.nEq;-
1351 saved_nBtm = pNew->u.btree.nBtm;-
1352 saved_nTop = pNew->u.btree.nTop;-
1353 saved_nSkip = pNew->nSkip;-
1354 saved_nLTerm = pNew->nLTerm;-
1355 saved_wsFlags = pNew->wsFlags;-
1356 saved_prereq = pNew->prereq;-
1357 saved_nOut = pNew->nOut;-
1358 pTerm = whereScanInit(&scan, pBuilder->pWC, pSrc->iCursor, saved_nEq,-
1359 opMask, pProbe);-
1360 pNew->rSetup = 0;-
1361 rSize = pProbe->aiRowLogEst[0];-
1362 rLogSize = estLog(rSize);-
1363 for(; rc==0
rc==0Description
TRUEevaluated 624837 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
&& pTerm!=0
pTerm!=0Description
TRUEevaluated 89808 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 535029 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; pTerm = whereScanNext(&scan)){
4-624837
1364 u16 eOp = pTerm->eOperator;-
1365 LogEst rCostIdx;-
1366 LogEst nOutUnadjusted;-
1367 int nIn = 0;-
1368-
1369-
1370-
1371 if( (eOp==0x0100
eOp==0x0100Description
TRUEevaluated 305 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 89503 times by 1 test
Evaluated by:
  • Self test (438)
|| (
(pTerm->wtFlags&0x00)!=0Description
TRUEnever evaluated
FALSEevaluated 89503 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->wtFlags&0x00)!=0
(pTerm->wtFlags&0x00)!=0Description
TRUEnever evaluated
FALSEevaluated 89503 times by 1 test
Evaluated by:
  • Self test (438)
)
0-89503
1372 && indexColumnNotNull(pProbe, saved_nEq)
indexColumnNot...be, saved_nEq)Description
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 283 times by 1 test
Evaluated by:
  • Self test (438)
22-283
1373 ){-
1374 continue;
executed 22 times by 1 test: continue;
Executed by:
  • Self test (438)
22
1375 }-
1376 if( pTerm->prereqRight & pNew->maskSelf
pTerm->prereqR...pNew->maskSelfDescription
TRUEevaluated 128 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 89658 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 128 times by 1 test: continue;
Executed by:
  • Self test (438)
128-89658
1377-
1378-
1379-
1380 if( pTerm->wtFlags & 0x100
pTerm->wtFlags & 0x100Description
TRUEevaluated 13946 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 75712 times by 1 test
Evaluated by:
  • Self test (438)
&& pTerm->eOperator==(0x0002<<(56 -53))
pTerm->eOperat...002<<(56 -53))Description
TRUEevaluated 6974 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6972 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 6974 times by 1 test: continue;
Executed by:
  • Self test (438)
6972-75712
1381-
1382-
1383-
1384-
1385 if( (
(pSrc->fg.join...e & 0x0008)!=0Description
TRUEevaluated 295 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 82389 times by 1 test
Evaluated by:
  • Self test (438)
pSrc->fg.jointype & 0x0008)!=0
(pSrc->fg.join...e & 0x0008)!=0Description
TRUEevaluated 295 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 82389 times by 1 test
Evaluated by:
  • Self test (438)
295-82389
1386 && !(((pTerm->pExpr)->flags&(0x000001))!=0)
!(((pTerm->pEx...0x000001))!=0)Description
TRUEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 280 times by 1 test
Evaluated by:
  • Self test (438)
15-280
1387 ){-
1388 continue;
executed 15 times by 1 test: continue;
Executed by:
  • Self test (438)
15
1389 }-
1390-
1391 if( ((
((pProbe)->onError!=0)Description
TRUEevaluated 26259 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 56410 times by 1 test
Evaluated by:
  • Self test (438)
pProbe)->onError!=0)
((pProbe)->onError!=0)Description
TRUEevaluated 26259 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 56410 times by 1 test
Evaluated by:
  • Self test (438)
&& saved_nEq==pProbe->nKeyCol-1
saved_nEq==pProbe->nKeyCol-1Description
TRUEevaluated 24525 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1734 times by 1 test
Evaluated by:
  • Self test (438)
){
1734-56410
1392 pBuilder->bldFlags |= 0x0002;-
1393 }
executed 24525 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
24525
1394 pBuilder->bldFlags |= 0x0001;-
1395 }
executed 58144 times by 1 test: end of block
Executed by:
  • Self test (438)
58144
1396 pNew->wsFlags = saved_wsFlags;-
1397 pNew->u.btree.nEq = saved_nEq;-
1398 pNew->u.btree.nBtm = saved_nBtm;-
1399 pNew->u.btree.nTop = saved_nTop;-
1400 pNew->nLTerm = saved_nLTerm;-
1401 if( whereLoopResize(db, pNew, pNew->nLTerm+1)
whereLoopResiz...New->nLTerm+1)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 82667 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 2 times by 1 test: break;
Executed by:
  • Self test (438)
2-82667
1402 pNew->aLTerm[pNew->nLTerm++] = pTerm;-
1403 pNew->prereq = (saved_prereq | pTerm->prereqRight) & ~pNew->maskSelf;-
1404-
1405 -
1406 ((void) (0))-
1407-
1408-
1409-
1410 -
1411 ;-
1412-
1413 if( eOp & 0x0001
eOp & 0x0001Description
TRUEevaluated 1012 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 81655 times by 1 test
Evaluated by:
  • Self test (438)
){
1012-81655
1414 Expr *pExpr = pTerm->pExpr;-
1415 if( (((
(((pExpr)->fla...0x000800))!=0)Description
TRUEevaluated 481 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 531 times by 1 test
Evaluated by:
  • Self test (438)
pExpr)->flags&(0x000800))!=0)
(((pExpr)->fla...0x000800))!=0)Description
TRUEevaluated 481 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 531 times by 1 test
Evaluated by:
  • Self test (438)
){
481-531
1416-
1417 int i;-
1418 nIn = 46; -
1419 ((void) (0))-
1420 ;-
1421-
1422-
1423-
1424-
1425-
1426-
1427 for(i=0; i<pNew->nLTerm-1
i<pNew->nLTerm-1Description
TRUEevaluated 235 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 481 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
235-481
1428 if( pNew->aLTerm[i]
pNew->aLTerm[i]Description
TRUEevaluated 233 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
&& pNew->aLTerm[i]->pExpr==pExpr
pNew->aLTerm[i]->pExpr==pExprDescription
TRUEevaluated 31 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 202 times by 1 test
Evaluated by:
  • Self test (438)
) nIn = 0;
executed 31 times by 1 test: nIn = 0;
Executed by:
  • Self test (438)
2-233
1429 }
executed 235 times by 1 test: end of block
Executed by:
  • Self test (438)
235
1430 }
executed 481 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( (pExpr->x.pList
pExpr->x.pListDescription
TRUEevaluated 531 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
&& pExpr->x.pList->nExpr
pExpr->x.pList->nExprDescription
TRUEevaluated 531 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
) ){
0-531
1431-
1432 nIn = sqlite3LogEst(pExpr->x.pList->nExpr);-
1433 -
1434 ((void) (0))-
1435 ;-
1436-
1437 }
executed 531 times by 1 test: end of block
Executed by:
  • Self test (438)
531
1438 if( pProbe->hasStat1
pProbe->hasStat1Description
TRUEevaluated 28 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 984 times by 1 test
Evaluated by:
  • Self test (438)
){
28-984
1439 LogEst M, logK, safetyMargin;-
1440 M = pProbe->aiRowLogEst[saved_nEq];-
1441 logK = estLog(nIn);-
1442 safetyMargin = 10;-
1443 if( M + logK + safetyMargin < nIn + rLogSize
M + logK + saf...nIn + rLogSizeDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
){
1-27
1444 -
1445-
1446 ;-
1447 continue;
executed 1 time by 1 test: continue;
Executed by:
  • Self test (438)
1
1448 }else{-
1449 -
1450-
1451 ;-
1452 }
executed 27 times by 1 test: end of block
Executed by:
  • Self test (438)
27
1453 }-
1454 pNew->wsFlags |= 0x00000004;-
1455 }
executed 1011 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( eOp & (0x0002|0x0080)
eOp & (0x0002|0x0080)Description
TRUEevaluated 40341 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41314 times by 1 test
Evaluated by:
  • Self test (438)
){
1011-41314
1456 int iCol = pProbe->aiColumn[saved_nEq];-
1457 pNew->wsFlags |= 0x00000001;-
1458 -
1459 ((void) (0))-
1460 ;-
1461 if( iCol==(-1)
iCol==(-1)Description
TRUEevaluated 7968 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 32373 times by 1 test
Evaluated by:
  • Self test (438)
7968-32373
1462 || (iCol>=0
iCol>=0Description
TRUEevaluated 32348 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 25 times by 1 test
Evaluated by:
  • Self test (438)
&& nInMul==0
nInMul==0Description
TRUEevaluated 32100 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 248 times by 1 test
Evaluated by:
  • Self test (438)
&& saved_nEq==pProbe->nKeyCol-1
saved_nEq==pProbe->nKeyCol-1Description
TRUEevaluated 22009 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10091 times by 1 test
Evaluated by:
  • Self test (438)
)
25-32348
1463 ){-
1464 if( iCol==(-1)
iCol==(-1)Description
TRUEevaluated 7968 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 22009 times by 1 test
Evaluated by:
  • Self test (438)
|| pProbe->uniqNotNull
pProbe->uniqNotNullDescription
TRUEevaluated 39 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 21970 times by 1 test
Evaluated by:
  • Self test (438)
39-22009
1465 || (pProbe->nKeyCol==1
pProbe->nKeyCol==1Description
TRUEevaluated 20964 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1006 times by 1 test
Evaluated by:
  • Self test (438)
&& pProbe->onError
pProbe->onErrorDescription
TRUEevaluated 1704 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 19260 times by 1 test
Evaluated by:
  • Self test (438)
&& eOp==0x0002
eOp==0x0002Description
TRUEevaluated 292 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1412 times by 1 test
Evaluated by:
  • Self test (438)
)
292-20964
1466 ){-
1467 pNew->wsFlags |= 0x00001000;-
1468 }
executed 8299 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
8299
1469 pNew->wsFlags |= 0x00010000;-
1470 }
executed 21678 times by 1 test: end of block
Executed by:
  • Self test (438)
21678
1471 }-
1472 }
executed 40341 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( eOp & 0x0100
eOp & 0x0100Description
TRUEevaluated 281 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41033 times by 1 test
Evaluated by:
  • Self test (438)
){
281-41033
1473 pNew->wsFlags |= 0x00000008;-
1474 }
executed 281 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( eOp & ((0x0002<<(54 -53))|(0x0002<<(57 -53)))
eOp & ((0x0002...02<<(57 -53)))Description
TRUEevaluated 20036 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20997 times by 1 test
Evaluated by:
  • Self test (438)
){
281-20997
1475 ;-
1476 ;-
1477 pNew->wsFlags |= 0x00000002|0x00000020;-
1478 pNew->u.btree.nBtm = whereRangeVectorLen(-
1479 pParse, pSrc->iCursor, pProbe, saved_nEq, pTerm-
1480 );-
1481 pBtm = pTerm;-
1482 pTop = 0;-
1483 if( pTerm->wtFlags & 0x100
pTerm->wtFlags & 0x100Description
TRUEevaluated 6972 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13064 times by 1 test
Evaluated by:
  • Self test (438)
){
6972-13064
1484-
1485-
1486 pTop = &pTerm[1];-
1487 -
1488 ((void) (0))-
1489 ;-
1490 -
1491 ((void) (0))-
1492 ;-
1493 -
1494 ((void) (0))-
1495 ;-
1496 if( whereLoopResize(db, pNew, pNew->nLTerm+1)
whereLoopResiz...New->nLTerm+1)Description
TRUEnever evaluated
FALSEevaluated 6972 times by 1 test
Evaluated by:
  • Self test (438)
) break;
never executed: break;
0-6972
1497 pNew->aLTerm[pNew->nLTerm++] = pTop;-
1498 pNew->wsFlags |= 0x00000010;-
1499 pNew->u.btree.nTop = 1;-
1500 }
executed 6972 times by 1 test: end of block
Executed by:
  • Self test (438)
6972
1501 }
executed 20036 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
20036
1502 -
1503 ((void) (0))-
1504 ;-
1505 ;-
1506 ;-
1507 pNew->wsFlags |= 0x00000002|0x00000010;-
1508 pNew->u.btree.nTop = whereRangeVectorLen(-
1509 pParse, pSrc->iCursor, pProbe, saved_nEq, pTerm-
1510 );-
1511 pTop = pTerm;-
1512 pBtm = (
(pNew->wsFlags...0x00000020)!=0Description
TRUEevaluated 8269 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12728 times by 1 test
Evaluated by:
  • Self test (438)
pNew->wsFlags & 0x00000020)!=0
(pNew->wsFlags...0x00000020)!=0Description
TRUEevaluated 8269 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12728 times by 1 test
Evaluated by:
  • Self test (438)
?
8269-12728
1513 pNew->aLTerm[pNew->nLTerm-2] : 0;-
1514 }
executed 20997 times by 1 test: end of block
Executed by:
  • Self test (438)
20997
1515-
1516-
1517-
1518-
1519-
1520-
1521 -
1522 ((void) (0))-
1523 ;-
1524 if( pNew->wsFlags & 0x00000002
pNew->wsFlags & 0x00000002Description
TRUEevaluated 41033 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41633 times by 1 test
Evaluated by:
  • Self test (438)
){
41033-41633
1525-
1526-
1527 whereRangeScanEst(pParse, pBuilder, pBtm, pTop, pNew);-
1528 }
executed 41033 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
41033
1529 int nEq = ++pNew->u.btree.nEq;-
1530 -
1531 ((void) (0))-
1532 ;-
1533-
1534 -
1535 ((void) (0))-
1536 ;-
1537 if( pTerm->truthProb<=0
pTerm->truthProb<=0Description
TRUEevaluated 36 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41597 times by 1 test
Evaluated by:
  • Self test (438)
&& pProbe->aiColumn[saved_nEq]>=0
pProbe->aiColumn[saved_nEq]>=0Description
TRUEevaluated 30 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test (438)
){
6-41597
1538 -
1539 ((void) (0))-
1540 ;-
1541 ;-
1542 pNew->nOut += pTerm->truthProb;-
1543 pNew->nOut -= nIn;-
1544 }
executed 30 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
30
1545 {-
1546 pNew->nOut += (pProbe->aiRowLogEst[nEq] - pProbe->aiRowLogEst[nEq-1]);-
1547 if( eOp & 0x0100
eOp & 0x0100Description
TRUEevaluated 281 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41322 times by 1 test
Evaluated by:
  • Self test (438)
){
281-41322
1548-
1549-
1550-
1551 pNew->nOut += 10;-
1552 }
executed 281 times by 1 test: end of block
Executed by:
  • Self test (438)
281
1553 }-
1554 }
executed 41603 times by 1 test: end of block
Executed by:
  • Self test (438)
41603
1555 }-
1556-
1557-
1558-
1559-
1560-
1561 rCostIdx = pNew->nOut + 1 + (15*pProbe->szIdxRow)/pSrc->pTab->szTabRow;-
1562 pNew->rRun = sqlite3LogEstAdd(rLogSize, rCostIdx);-
1563 if( (
(pNew->wsFlags...x00000100))==0Description
TRUEevaluated 46945 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35721 times by 1 test
Evaluated by:
  • Self test (438)
pNew->wsFlags & (0x00000040|0x00000100))==0
(pNew->wsFlags...x00000100))==0Description
TRUEevaluated 46945 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 35721 times by 1 test
Evaluated by:
  • Self test (438)
){
35721-46945
1564 pNew->rRun = sqlite3LogEstAdd(pNew->rRun, pNew->nOut + 16);-
1565 }
executed 46945 times by 1 test: end of block
Executed by:
  • Self test (438)
46945
1566 ;-
1567-
1568 nOutUnadjusted = pNew->nOut;-
1569 pNew->rRun += nInMul + nIn;-
1570 pNew->nOut += nInMul + nIn;-
1571 whereLoopOutputAdjust(pBuilder->pWC, pNew, rSize);-
1572 rc = whereLoopInsert(pBuilder, pNew);-
1573-
1574 if( pNew->wsFlags & 0x00000002
pNew->wsFlags & 0x00000002Description
TRUEevaluated 41033 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41633 times by 1 test
Evaluated by:
  • Self test (438)
){
41033-41633
1575 pNew->nOut = saved_nOut;-
1576 }
executed 41033 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
41033
1577 pNew->nOut = nOutUnadjusted;-
1578 }
executed 41633 times by 1 test: end of block
Executed by:
  • Self test (438)
41633
1579-
1580 if( (
(pNew->wsFlags...0x00000010)==0Description
TRUEevaluated 54697 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27969 times by 1 test
Evaluated by:
  • Self test (438)
pNew->wsFlags & 0x00000010)==0
(pNew->wsFlags...0x00000010)==0Description
TRUEevaluated 54697 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27969 times by 1 test
Evaluated by:
  • Self test (438)
27969-54697
1581 && pNew->u.btree.nEq<pProbe->nColumn
pNew->u.btree....Probe->nColumnDescription
TRUEevaluated 46576 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 8121 times by 1 test
Evaluated by:
  • Self test (438)
8121-46576
1582 ){-
1583 whereLoopAddBtreeIndex(pBuilder, pSrc, pProbe, nInMul+nIn);-
1584 }
executed 46576 times by 1 test: end of block
Executed by:
  • Self test (438)
46576
1585 pNew->nOut = saved_nOut;-
1586-
1587-
1588-
1589 }
executed 82666 times by 1 test: end of block
Executed by:
  • Self test (438)
82666
1590 pNew->prereq = saved_prereq;-
1591 pNew->u.btree.nEq = saved_nEq;-
1592 pNew->u.btree.nBtm = saved_nBtm;-
1593 pNew->u.btree.nTop = saved_nTop;-
1594 pNew->nSkip = saved_nSkip;-
1595 pNew->wsFlags = saved_wsFlags;-
1596 pNew->nOut = saved_nOut;-
1597 pNew->nLTerm = saved_nLTerm;-
1598 -
1599 ((void) (0))-
1600 ;-
1601 if( saved_nEq==saved_nSkip
saved_nEq==saved_nSkipDescription
TRUEevaluated 500722 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 34313 times by 1 test
Evaluated by:
  • Self test (438)
34313-500722
1602 && saved_nEq+1<pProbe->nKeyCol
saved_nEq+1<pProbe->nKeyColDescription
TRUEevaluated 98013 times by 8 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (32)
  • Self test (33)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
FALSEevaluated 402709 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
98013-402709
1603 && pProbe->noSkipScan==0
pProbe->noSkipScan==0Description
TRUEevaluated 98011 times by 8 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (32)
  • Self test (33)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
2-98011
1604 && (((
(((db)->dbOptF...&(0x4000))==0)Description
TRUEevaluated 98010 times by 8 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (32)
  • Self test (33)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
db)->dbOptFlags&(0x4000))==0)
(((db)->dbOptF...&(0x4000))==0)Description
TRUEevaluated 98010 times by 8 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (32)
  • Self test (33)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
1-98010
1605 && pProbe->aiRowLogEst[saved_nEq+1]>=42
pProbe->aiRowL...ved_nEq+1]>=42Description
TRUEevaluated 617 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 97393 times by 8 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (32)
  • Self test (33)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
617-97393
1606 && (
(rc = whereLoo...>nLTerm+1))==0Description
TRUEevaluated 617 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
rc = whereLoopResize(db, pNew, pNew->nLTerm+1))==0
(rc = whereLoo...>nLTerm+1))==0Description
TRUEevaluated 617 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-617
1607 ){-
1608 LogEst nIter;-
1609 pNew->u.btree.nEq++;-
1610 pNew->nSkip++;-
1611 pNew->aLTerm[pNew->nLTerm++] = 0;-
1612 pNew->wsFlags |= 0x00008000;-
1613 nIter = pProbe->aiRowLogEst[saved_nEq] - pProbe->aiRowLogEst[saved_nEq+1];-
1614 pNew->nOut -= nIter;-
1615-
1616-
1617 nIter += 5;-
1618 whereLoopAddBtreeIndex(pBuilder, pSrc, pProbe, nIter + nInMul);-
1619 pNew->nOut = saved_nOut;-
1620 pNew->u.btree.nEq = saved_nEq;-
1621 pNew->nSkip = saved_nSkip;-
1622 pNew->wsFlags = saved_wsFlags;-
1623 }
executed 617 times by 1 test: end of block
Executed by:
  • Self test (438)
617
1624-
1625 -
1626 ;-
1627 return
executed 535035 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
rc;
executed 535035 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
535035
1628}-
1629static int indexMightHelpWithOrderBy(-
1630 WhereLoopBuilder *pBuilder,-
1631 Index *pIndex,-
1632 int iCursor-
1633){-
1634 ExprList *pOB;-
1635 ExprList *aColExpr;-
1636 int ii, jj;-
1637-
1638 if( pIndex->bUnordered
pIndex->bUnorderedDescription
TRUEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 487875 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 14 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 14 times by 1 test: return 0;
Executed by:
  • Self test (438)
14-487875
1639 if( (
(pOB = pBuilde...->pOrderBy)==0Description
TRUEevaluated 383729 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
FALSEevaluated 104146 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pOB = pBuilder->pWInfo->pOrderBy)==0
(pOB = pBuilde...->pOrderBy)==0Description
TRUEevaluated 383729 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
FALSEevaluated 104146 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 383729 times by 401 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
0;
executed 383729 times by 401 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
104146-383729
1640 for(ii=0; ii<pOB->nExpr
ii<pOB->nExprDescription
TRUEevaluated 110016 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 40803 times by 1 test
Evaluated by:
  • Self test (438)
; ii++){
40803-110016
1641 Expr *pExpr = sqlite3ExprSkipCollate(pOB->a[ii].pExpr);-
1642 if( pExpr->op==158
pExpr->op==158Description
TRUEevaluated 93428 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 16588 times by 1 test
Evaluated by:
  • Self test (438)
&& pExpr->iTable==iCursor
pExpr->iTable==iCursorDescription
TRUEevaluated 85355 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 8073 times by 1 test
Evaluated by:
  • Self test (438)
){
8073-93428
1643 if( pExpr->iColumn<0
pExpr->iColumn<0Description
TRUEevaluated 57777 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 27578 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) return
executed 57777 times by 435 tests: return 1;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
1;
executed 57777 times by 435 tests: return 1;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
27578-57777
1644 for(jj=0; jj<pIndex->nKeyCol
jj<pIndex->nKeyColDescription
TRUEevaluated 28652 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 22031 times by 1 test
Evaluated by:
  • Self test (438)
; jj++){
22031-28652
1645 if( pExpr->iColumn==pIndex->aiColumn[jj]
pExpr->iColumn...->aiColumn[jj]Description
TRUEevaluated 5547 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 23105 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 5547 times by 2 tests: return 1;
Executed by:
  • Self test (438)
  • Self test (47)
1;
executed 5547 times by 2 tests: return 1;
Executed by:
  • Self test (438)
  • Self test (47)
5547-23105
1646 }
executed 23105 times by 1 test: end of block
Executed by:
  • Self test (438)
23105
1647 }
executed 22031 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( (
(aColExpr = pI...->aColExpr)!=0Description
TRUEevaluated 81 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 24580 times by 1 test
Evaluated by:
  • Self test (438)
aColExpr = pIndex->aColExpr)!=0
(aColExpr = pI...->aColExpr)!=0Description
TRUEevaluated 81 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 24580 times by 1 test
Evaluated by:
  • Self test (438)
){
81-24580
1648 for(jj=0; jj<pIndex->nKeyCol
jj<pIndex->nKeyColDescription
TRUEevaluated 115 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 62 times by 1 test
Evaluated by:
  • Self test (438)
; jj++){
62-115
1649 if( pIndex->aiColumn[jj]!=(-2)
pIndex->aiColumn[jj]!=(-2)Description
TRUEevaluated 33 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 82 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 33 times by 1 test: continue;
Executed by:
  • Self test (438)
33-82
1650 if( sqlite3ExprCompareSkip(pExpr,aColExpr->a[jj].pExpr,iCursor)==0
sqlite3ExprCom...pr,iCursor)==0Description
TRUEevaluated 19 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 63 times by 1 test
Evaluated by:
  • Self test (438)
){
19-63
1651 return
executed 19 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 19 times by 1 test: return 1;
Executed by:
  • Self test (438)
19
1652 }-
1653 }
executed 63 times by 1 test: end of block
Executed by:
  • Self test (438)
63
1654 }
executed 62 times by 1 test: end of block
Executed by:
  • Self test (438)
62
1655 }
executed 46673 times by 1 test: end of block
Executed by:
  • Self test (438)
46673
1656 return
executed 40803 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 40803 times by 1 test: return 0;
Executed by:
  • Self test (438)
40803
1657}-
1658-
1659-
1660-
1661-
1662static int whereUsablePartialIndex(int iTab, WhereClause *pWC, Expr *pWhere){-
1663 int i;-
1664 WhereTerm *pTerm;-
1665 Parse *pParse = pWC->pWInfo->pParse;-
1666 while( pWhere->op==44
pWhere->op==44Description
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 170 times by 1 test
Evaluated by:
  • Self test (438)
){
12-170
1667 if( !whereUsablePartialIndex(iTab,pWC,pWhere->pLeft)
!whereUsablePa...pWhere->pLeft)Description
TRUEnever evaluated
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
) return
never executed: return 0;
0;
never executed: return 0;
0-12
1668 pWhere = pWhere->pRight;-
1669 }
executed 12 times by 1 test: end of block
Executed by:
  • Self test (438)
12
1670 if( pParse->db->flags & 0x00800000
pParse->db->flags & 0x00800000Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 163 times by 1 test
Evaluated by:
  • Self test (438)
) pParse = 0;
executed 7 times by 1 test: pParse = 0;
Executed by:
  • Self test (438)
7-163
1671 for(i=0, pTerm=pWC->a; i<pWC->nTerm
i<pWC->nTermDescription
TRUEevaluated 193 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
; i++, pTerm++){
113-193
1672 Expr *pExpr = pTerm->pExpr;-
1673 if( (!(((pExpr)->flags&(0x000001))!=0)
!(((pExpr)->fl...0x000001))!=0)Description
TRUEevaluated 185 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 8 times by 1 test
Evaluated by:
  • Self test (438)
|| pExpr->iRightJoinTable==iTab
pExpr->iRightJoinTable==iTabDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6 times by 1 test
Evaluated by:
  • Self test (438)
)
2-185
1674 && sqlite3ExprImpliesExpr(pParse, pExpr, pWhere, iTab)
sqlite3ExprImp... pWhere, iTab)Description
TRUEevaluated 57 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 130 times by 1 test
Evaluated by:
  • Self test (438)
57-130
1675 ){-
1676 return
executed 57 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 57 times by 1 test: return 1;
Executed by:
  • Self test (438)
57
1677 }-
1678 }
executed 136 times by 1 test: end of block
Executed by:
  • Self test (438)
136
1679 return
executed 113 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 113 times by 1 test: return 0;
Executed by:
  • Self test (438)
113
1680}-
1681static int whereLoopAddBtree(-
1682 WhereLoopBuilder *pBuilder,-
1683 Bitmask mPrereq-
1684){-
1685 WhereInfo *pWInfo;-
1686 Index *pProbe;-
1687 Index sPk;-
1688 LogEst aiRowEstPk[2];-
1689 i16 aiColumnPk = -1;-
1690 SrcList *pTabList;-
1691 struct SrcList_item *pSrc;-
1692 WhereLoop *pNew;-
1693 int rc = 0;-
1694 int iSortIdx = 1;-
1695 int b;-
1696 LogEst rSize;-
1697 LogEst rLogSize;-
1698 WhereClause *pWC;-
1699 Table *pTab;-
1700-
1701 pNew = pBuilder->pNew;-
1702 pWInfo = pBuilder->pWInfo;-
1703 pTabList = pWInfo->pTabList;-
1704 pSrc = pTabList->a + pNew->iTab;-
1705 pTab = pSrc->pTab;-
1706 pWC = pBuilder->pWC;-
1707 -
1708 ((void) (0))-
1709 ;-
1710-
1711 if( pSrc->pIBIndex
pSrc->pIBIndexDescription
TRUEevaluated 126 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 259909 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
126-259909
1712-
1713 pProbe = pSrc->pIBIndex;-
1714 }
executed 126 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
else if( !(((pTab)->tabFlags & 0x0020)==0)
!(((pTab)->tab... & 0x0020)==0)Description
TRUEevaluated 885 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 259024 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
126-259024
1715 pProbe = pTab->pIndex;-
1716 }
executed 885 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
885
1717-
1718-
1719-
1720-
1721 Index *pFirst;-
1722 memset(&sPk, 0, sizeof(Index));-
1723 sPk.nKeyCol = 1;-
1724 sPk.nColumn = 1;-
1725 sPk.aiColumn = &aiColumnPk;-
1726 sPk.aiRowLogEst = aiRowEstPk;-
1727 sPk.onError = 5;-
1728 sPk.pTable = pTab;-
1729 sPk.szIdxRow = pTab->szTabRow;-
1730 aiRowEstPk[0] = pTab->nRowLogEst;-
1731 aiRowEstPk[1] = 0;-
1732 pFirst = pSrc->pTab->pIndex;-
1733 if( pSrc->fg.notIndexed==0
pSrc->fg.notIndexed==0Description
TRUEevaluated 259007 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 17 times by 1 test
Evaluated by:
  • Self test (438)
){
17-259007
1734-
1735-
1736 sPk.pNext = pFirst;-
1737 }
executed 259007 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
259007
1738 pProbe = &sPk;-
1739 }
executed 259024 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
259024
1740 rSize = pTab->nRowLogEst;-
1741 rLogSize = estLog(rSize);-
1742-
1743-
1744-
1745 if( !pBuilder->pOrSet
!pBuilder->pOrSetDescription
TRUEevaluated 240552 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 19483 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
19483-240552
1746 && (
(pWInfo->wctrl...s & 0x0020)==0Description
TRUEevaluated 222795 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 17757 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->wctrlFlags & 0x0020)==0
(pWInfo->wctrl...s & 0x0020)==0Description
TRUEevaluated 222795 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 17757 times by 1 test
Evaluated by:
  • Self test (438)
17757-222795
1747 && (
(pWInfo->pPars...0x00008000)!=0Description
TRUEevaluated 222432 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 363 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->pParse->db->flags & 0x00008000)!=0
(pWInfo->pPars...0x00008000)!=0Description
TRUEevaluated 222432 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 363 times by 1 test
Evaluated by:
  • Self test (438)
363-222432
1748 && pSrc->pIBIndex==0
pSrc->pIBIndex==0Description
TRUEevaluated 222316 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 116 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
116-222316
1749 && !pSrc->fg.notIndexed
!pSrc->fg.notIndexedDescription
TRUEevaluated 222303 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
13-222303
1750 && (((
(((pTab)->tabF... & 0x0020)==0)Description
TRUEevaluated 221475 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 828 times by 1 test
Evaluated by:
  • Self test (438)
pTab)->tabFlags & 0x0020)==0)
(((pTab)->tabF... & 0x0020)==0)Description
TRUEevaluated 221475 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 828 times by 1 test
Evaluated by:
  • Self test (438)
828-221475
1751 && !pSrc->fg.isCorrelated
!pSrc->fg.isCorrelatedDescription
TRUEevaluated 221459 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
16-221459
1752 && !pSrc->fg.isRecursive
!pSrc->fg.isRecursiveDescription
TRUEevaluated 221183 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 276 times by 1 test
Evaluated by:
  • Self test (438)
276-221183
1753 ){-
1754-
1755 WhereTerm *pTerm;-
1756 WhereTerm *pWCEnd = pWC->a + pWC->nTerm;-
1757 for(pTerm=pWC->a; rc==0
rc==0Description
TRUEevaluated 460133 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
&& pTerm<pWCEnd
pTerm<pWCEndDescription
TRUEevaluated 238964 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 221169 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; pTerm++){
14-460133
1758 if( pTerm->prereqRight & pNew->maskSelf
pTerm->prereqR...pNew->maskSelfDescription
TRUEevaluated 24143 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 214821 times by 366 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
) continue;
executed 24143 times by 2 tests: continue;
Executed by:
  • Self test (34)
  • Self test (438)
24143-214821
1759 if( termCanDriveIndex(pTerm, pSrc, 0)
termCanDriveIn...Term, pSrc, 0)Description
TRUEevaluated 60091 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 154730 times by 361 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
){
60091-154730
1760 pNew->u.btree.nEq = 1;-
1761 pNew->nSkip = 0;-
1762 pNew->u.btree.pIndex = 0;-
1763 pNew->nLTerm = 1;-
1764 pNew->aLTerm[0] = pTerm;-
1765 pNew->rSetup = rLogSize + rSize;-
1766 if( pTab->pSelect==0
pTab->pSelect==0Description
TRUEevaluated 59543 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 548 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(pTab->tabFlags & 0x0002)==0Description
TRUEevaluated 59430 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
pTab->tabFlags & 0x0002)==0
(pTab->tabFlags & 0x0002)==0Description
TRUEevaluated 59430 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
){
113-59543
1767 pNew->rSetup += 28;-
1768 }
executed 59430 times by 33 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
else{
59430
1769 pNew->rSetup -= 10;-
1770 }
executed 661 times by 1 test: end of block
Executed by:
  • Self test (438)
661
1771 ;-
1772 if( pNew->rSetup<0
pNew->rSetup<0Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 60086 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
) pNew->rSetup = 0;
executed 5 times by 1 test: pNew->rSetup = 0;
Executed by:
  • Self test (438)
5-60086
1773-
1774-
1775-
1776-
1777 pNew->nOut = 43; -
1778 ((void) (0))-
1779 ;-
1780 pNew->rRun = sqlite3LogEstAdd(rLogSize,pNew->nOut);-
1781 pNew->wsFlags = 0x00004000;-
1782 pNew->prereq = mPrereq | pTerm->prereqRight;-
1783 rc = whereLoopInsert(pBuilder, pNew);-
1784 }
executed 60091 times by 33 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
60091
1785 }
executed 214821 times by 366 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
214821
1786 }
executed 221183 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
221183
1787-
1788-
1789-
1790-
1791 for(; rc==0
rc==0Description
TRUEevaluated 747985 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
&& pProbe
pProbeDescription
TRUEevaluated 488009 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 259976 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
;
16-747985
1792 pProbe=(pSrc->pIBIndex ? 0 : pProbe->pNext), iSortIdx++-
1793 ){-
1794 if( pProbe->pPartIdxWhere!=0
pProbe->pPartIdxWhere!=0Description
TRUEevaluated 158 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 487851 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
158-487851
1795 && !whereUsablePartialIndex(pSrc->iCursor, pWC, pProbe->pPartIdxWhere)
!whereUsablePa...pPartIdxWhere)Description
TRUEevaluated 113 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 45 times by 1 test
Evaluated by:
  • Self test (438)
){
45-113
1796 ;-
1797 continue;
executed 113 times by 1 test: continue;
Executed by:
  • Self test (438)
113
1798 }-
1799 if( pProbe->bNoQuery
pProbe->bNoQueryDescription
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 487889 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 7 times by 1 test: continue;
Executed by:
  • Self test (438)
7-487889
1800 rSize = pProbe->aiRowLogEst[0];-
1801 pNew->u.btree.nEq = 0;-
1802 pNew->u.btree.nBtm = 0;-
1803 pNew->u.btree.nTop = 0;-
1804 pNew->nSkip = 0;-
1805 pNew->nLTerm = 0;-
1806 pNew->iSortIdx = 0;-
1807 pNew->rSetup = 0;-
1808 pNew->prereq = mPrereq;-
1809 pNew->nOut = rSize;-
1810 pNew->u.btree.pIndex = pProbe;-
1811 b = indexMightHelpWithOrderBy(pBuilder, pProbe, pSrc->iCursor);-
1812-
1813 -
1814 ((void) (0))-
1815 ;-
1816 if( pProbe->tnum<=0
pProbe->tnum<=0Description
TRUEevaluated 259010 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 228879 times by 356 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
){
228879-259010
1817-
1818 pNew->wsFlags = 0x00000100;-
1819-
1820-
1821 pNew->iSortIdx = b
bDescription
TRUEevaluated 46448 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 212562 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
? iSortIdx : 0;
46448-212562
1822-
1823 pNew->rRun = rSize + 16;-
1824 ;-
1825 whereLoopOutputAdjust(pWC, pNew, rSize);-
1826 rc = whereLoopInsert(pBuilder, pNew);-
1827 pNew->nOut = rSize;-
1828 if( rc
rcDescription
TRUEevaluated 43 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 258967 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) break;
executed 43 times by 1 test: break;
Executed by:
  • Self test (438)
43-258967
1829 }
executed 258967 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
258967
1830 Bitmask m;-
1831 if( pProbe->isCovering
pProbe->isCoveringDescription
TRUEevaluated 3870 times by 6 tests
Evaluated by:
  • Self test (2)
  • Self test (3)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
FALSEevaluated 225009 times by 351 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
){
3870-225009
1832 pNew->wsFlags = 0x00000040 | 0x00000200;-
1833 m = 0;-
1834 }
executed 3870 times by 6 tests: end of block
Executed by:
  • Self test (2)
  • Self test (3)
  • Self test (438)
  • Self test (53)
  • Self test (86)
  • Self test (87)
else{
3870
1835 m = pSrc->colUsed & pProbe->colNotIdxed;-
1836 pNew->wsFlags = (
(m==0)Description
TRUEevaluated 20265 times by 346 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 204744 times by 7 tests
Evaluated by:
  • Self test
  • Self test (35)
  • Self test (36)
  • Self test (438)
  • Self test (47)
  • Self test (57)
  • Self test (58)
m==0)
(m==0)Description
TRUEevaluated 20265 times by 346 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 204744 times by 7 tests
Evaluated by:
  • Self test
  • Self test (35)
  • Self test (36)
  • Self test (438)
  • Self test (47)
  • Self test (57)
  • Self test (58)
? (0x00000040|0x00000200) : 0x00000200;
20265-204744
1837 }
executed 225009 times by 351 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
225009
1838-
1839-
1840 if( b
bDescription
TRUEevaluated 16895 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 211984 times by 355 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
16895-211984
1841 || !(((pTab)->tabFlags & 0x0020)==0)
!(((pTab)->tab... & 0x0020)==0)Description
TRUEevaluated 1103 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 210881 times by 355 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
1103-210881
1842 || pProbe->pPartIdxWhere!=0
pProbe->pPartIdxWhere!=0Description
TRUEevaluated 19 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 210862 times by 355 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
19-210862
1843 || ( m==0
m==0Description
TRUEevaluated 17958 times by 351 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 192904 times by 6 tests
Evaluated by:
  • Self test
  • Self test (35)
  • Self test (36)
  • Self test (438)
  • Self test (57)
  • Self test (58)
17958-192904
1844 && pProbe->bUnordered==0
pProbe->bUnordered==0Description
TRUEevaluated 17957 times by 351 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
1-17957
1845 && (
(pProbe->szIdx...Tab->szTabRow)Description
TRUEevaluated 13760 times by 3 tests
Evaluated by:
  • Self test (35)
  • Self test (438)
  • Self test (54)
FALSEevaluated 4197 times by 349 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
pProbe->szIdxRow<pTab->szTabRow)
(pProbe->szIdx...Tab->szTabRow)Description
TRUEevaluated 13760 times by 3 tests
Evaluated by:
  • Self test (35)
  • Self test (438)
  • Self test (54)
FALSEevaluated 4197 times by 349 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
4197-13760
1846 && (
(pWInfo->wctrl...s & 0x0004)==0Description
TRUEevaluated 13128 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 632 times by 3 tests
Evaluated by:
  • Self test (35)
  • Self test (438)
  • Self test (54)
pWInfo->wctrlFlags & 0x0004)==0
(pWInfo->wctrl...s & 0x0004)==0Description
TRUEevaluated 13128 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 632 times by 3 tests
Evaluated by:
  • Self test (35)
  • Self test (438)
  • Self test (54)
632-13128
1847 && sqlite3Config.bUseCis
sqlite3Config.bUseCisDescription
TRUEevaluated 13125 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
3-13125
1848 && (((
(((pWInfo->pPa...&(0x0020))==0)Description
TRUEevaluated 13091 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 34 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->pParse->db)->dbOptFlags&(0x0020))==0)
(((pWInfo->pPa...&(0x0020))==0)Description
TRUEevaluated 13091 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 34 times by 1 test
Evaluated by:
  • Self test (438)
34-13091
1849 )-
1850 ){-
1851 pNew->iSortIdx = b
bDescription
TRUEevaluated 16895 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 14213 times by 1 test
Evaluated by:
  • Self test (438)
? iSortIdx : 0;
14213-16895
1852-
1853-
1854-
1855-
1856 pNew->rRun = rSize + 1 + (15*pProbe->szIdxRow)/pTab->szTabRow;-
1857 if( m!=0
m!=0Description
TRUEevaluated 11840 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 19268 times by 1 test
Evaluated by:
  • Self test (438)
){
11840-19268
1858-
1859-
1860-
1861-
1862-
1863 LogEst nLookup = rSize + 16;-
1864 int ii;-
1865 int iCur = pSrc->iCursor;-
1866 WhereClause *pWC2 = &pWInfo->sWC;-
1867 for(ii=0; ii<pWC2->nTerm
ii<pWC2->nTermDescription
TRUEevaluated 13184 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3624 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
; ii++){
3624-13184
1868 WhereTerm *pTerm = &pWC2->a[ii];-
1869 if( !sqlite3ExprCoveredByIndex(pTerm->pExpr, iCur, pProbe)
!sqlite3ExprCo... iCur, pProbe)Description
TRUEevaluated 8216 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4968 times by 1 test
Evaluated by:
  • Self test (438)
){
4968-8216
1870 break;
executed 8216 times by 1 test: break;
Executed by:
  • Self test (438)
8216
1871 }-
1872-
1873-
1874 if( pTerm->truthProb<=0
pTerm->truthProb<=0Description
TRUEnever evaluated
FALSEevaluated 4968 times by 1 test
Evaluated by:
  • Self test (438)
){
0-4968
1875 nLookup += pTerm->truthProb;-
1876 }
never executed: end of block
else{
0
1877 nLookup--;-
1878 if( pTerm->eOperator & (0x0002|0x0080)
pTerm->eOperat...0x0002|0x0080)Description
TRUEevaluated 1434 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3534 times by 1 test
Evaluated by:
  • Self test (438)
) nLookup -= 19;
executed 1434 times by 1 test: nLookup -= 19;
Executed by:
  • Self test (438)
1434-3534
1879 }
executed 4968 times by 1 test: end of block
Executed by:
  • Self test (438)
4968
1880 }-
1881-
1882 pNew->rRun = sqlite3LogEstAdd(pNew->rRun, nLookup);-
1883 }
executed 11840 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
11840
1884 ;-
1885 whereLoopOutputAdjust(pWC, pNew, rSize);-
1886 rc = whereLoopInsert(pBuilder, pNew);-
1887 pNew->nOut = rSize;-
1888 if( rc
rcDescription
TRUEnever evaluated
FALSEevaluated 31108 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) break;
never executed: break;
0-31108
1889 }
executed 31108 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
31108
1890 }
executed 228879 times by 356 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
228879
1891-
1892 pBuilder->bldFlags = 0;-
1893 rc = whereLoopAddBtreeIndex(pBuilder, pSrc, pProbe, 0);-
1894 if( pBuilder->bldFlags==0x0001
pBuilder->bldFlags==0x0001Description
TRUEevaluated 42557 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 445289 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
42557-445289
1895-
1896-
1897-
1898-
1899 pTab->tabFlags |= 0x0100;-
1900 }
executed 42557 times by 1 test: end of block
Executed by:
  • Self test (438)
42557
1901-
1902-
1903-
1904-
1905-
1906 }
executed 487846 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
487846
1907 return
executed 260035 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
rc;
executed 260035 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
260035
1908}-
1909static int whereLoopAddVirtualOne(-
1910 WhereLoopBuilder *pBuilder,-
1911 Bitmask mPrereq,-
1912 Bitmask mUsable,-
1913 u16 mExclude,-
1914 sqlite3_index_info *pIdxInfo,-
1915 u16 mNoOmit,-
1916 int *pbIn-
1917){-
1918 WhereClause *pWC = pBuilder->pWC;-
1919 struct sqlite3_index_constraint *pIdxCons;-
1920 struct sqlite3_index_constraint_usage *pUsage = pIdxInfo->aConstraintUsage;-
1921 int i;-
1922 int mxTerm;-
1923 int rc = 0;-
1924 WhereLoop *pNew = pBuilder->pNew;-
1925 Parse *pParse = pBuilder->pWInfo->pParse;-
1926 struct SrcList_item *pSrc = &pBuilder->pWInfo->pTabList->a[pNew->iTab];-
1927 int nConstraint = pIdxInfo->nConstraint;-
1928-
1929 -
1930 ((void) (0))-
1931 ;-
1932 *pbIn = 0;-
1933 pNew->prereq = mPrereq;-
1934-
1935-
1936-
1937 pIdxCons = *(struct sqlite3_index_constraint**)&pIdxInfo->aConstraint;-
1938 for(i=0; i<nConstraint
i<nConstraintDescription
TRUEevaluated 21068 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12102 times by 1 test
Evaluated by:
  • Self test (438)
; i++, pIdxCons++){
12102-21068
1939 WhereTerm *pTerm = &pWC->a[pIdxCons->iTermOffset];-
1940 pIdxCons->usable = 0;-
1941 if( (
(pTerm->prereq...m->prereqRightDescription
TRUEevaluated 20425 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 643 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->prereqRight & mUsable)==pTerm->prereqRight
(pTerm->prereq...m->prereqRightDescription
TRUEevaluated 20425 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 643 times by 1 test
Evaluated by:
  • Self test (438)
643-20425
1942 && (
(pTerm->eOpera...& mExclude)==0Description
TRUEevaluated 20425 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
pTerm->eOperator & mExclude)==0
(pTerm->eOpera...& mExclude)==0Description
TRUEevaluated 20425 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-20425
1943 ){-
1944 pIdxCons->usable = 1;-
1945 }
executed 20425 times by 1 test: end of block
Executed by:
  • Self test (438)
20425
1946 }
executed 21068 times by 1 test: end of block
Executed by:
  • Self test (438)
21068
1947-
1948-
1949 memset(pUsage, 0, sizeof(pUsage[0])*nConstraint);-
1950 -
1951 ((void) (0))-
1952 ;-
1953 pIdxInfo->idxStr = 0;-
1954 pIdxInfo->idxNum = 0;-
1955 pIdxInfo->orderByConsumed = 0;-
1956 pIdxInfo->estimatedCost = (1e99) / (double)2;-
1957 pIdxInfo->estimatedRows = 25;-
1958 pIdxInfo->idxFlags = 0;-
1959 pIdxInfo->colUsed = (sqlite3_int64)pSrc->colUsed;-
1960-
1961-
1962 rc = vtabBestIndex(pParse, pSrc->pTab, pIdxInfo);-
1963 if( rc
rcDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12100 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 2 times by 1 test: return rc;
Executed by:
  • Self test (438)
rc;
executed 2 times by 1 test: return rc;
Executed by:
  • Self test (438)
2-12100
1964-
1965 mxTerm = -1;-
1966 -
1967 ((void) (0))-
1968 ;-
1969 for(i=0; i<nConstraint
i<nConstraintDescription
TRUEevaluated 21064 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 12100 times by 1 test
Evaluated by:
  • Self test (438)
; i++) pNew->aLTerm[i] = 0;
executed 21064 times by 1 test: pNew->aLTerm[i] = 0;
Executed by:
  • Self test (438)
12100-21064
1970 pNew->u.vtab.omitMask = 0;-
1971 pIdxCons = *(struct sqlite3_index_constraint**)&pIdxInfo->aConstraint;-
1972 for(i=0; i<nConstraint
i<nConstraintDescription
TRUEevaluated 21064 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11834 times by 1 test
Evaluated by:
  • Self test (438)
; i++, pIdxCons++){
11834-21064
1973 int iTerm;-
1974 if( (
(iTerm = pUsag...vIndex - 1)>=0Description
TRUEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1988 times by 1 test
Evaluated by:
  • Self test (438)
iTerm = pUsage[i].argvIndex - 1)>=0
(iTerm = pUsag...vIndex - 1)>=0Description
TRUEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1988 times by 1 test
Evaluated by:
  • Self test (438)
){
1988-19076
1975 WhereTerm *pTerm;-
1976 int j = pIdxCons->iTermOffset;-
1977 if( iTerm>=nConstraint
iTerm>=nConstraintDescription
TRUEnever evaluated
FALSEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
0-19076
1978 || j<0
j<0Description
TRUEnever evaluated
FALSEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
0-19076
1979 || j>=pWC->nTerm
j>=pWC->nTermDescription
TRUEnever evaluated
FALSEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
0-19076
1980 || pNew->aLTerm[iTerm]!=0
pNew->aLTerm[iTerm]!=0Description
TRUEnever evaluated
FALSEevaluated 19076 times by 1 test
Evaluated by:
  • Self test (438)
0-19076
1981 || pIdxCons->usable==0
pIdxCons->usable==0Description
TRUEevaluated 266 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18810 times by 1 test
Evaluated by:
  • Self test (438)
266-18810
1982 ){-
1983 sqlite3ErrorMsg(pParse,"%s.xBestIndex malfunction",pSrc->pTab->zName);-
1984 ;-
1985 return
executed 266 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 266 times by 1 test: return 1;
Executed by:
  • Self test (438)
266
1986 }-
1987 ;-
1988 ;-
1989 ;-
1990 pTerm = &pWC->a[j];-
1991 pNew->prereq |= pTerm->prereqRight;-
1992 -
1993 ((void) (0))-
1994 ;-
1995 pNew->aLTerm[iTerm] = pTerm;-
1996 if( iTerm>mxTerm
iTerm>mxTermDescription
TRUEevaluated 18759 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 51 times by 1 test
Evaluated by:
  • Self test (438)
) mxTerm = iTerm;
executed 18759 times by 1 test: mxTerm = iTerm;
Executed by:
  • Self test (438)
51-18759
1997 ;-
1998 ;-
1999 if( iTerm<16
iTerm<16Description
TRUEevaluated 18810 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
&& pUsage[i].omit
pUsage[i].omitDescription
TRUEevaluated 17824 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 986 times by 1 test
Evaluated by:
  • Self test (438)
) pNew->u.vtab.omitMask |= 1<<iTerm;
executed 17824 times by 1 test: pNew->u.vtab.omitMask |= 1<<iTerm;
Executed by:
  • Self test (438)
0-18810
2000 if( (
(pTerm->eOperator & 0x0001)!=0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18789 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator & 0x0001)!=0
(pTerm->eOperator & 0x0001)!=0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18789 times by 1 test
Evaluated by:
  • Self test (438)
){
21-18789
2001-
2002-
2003-
2004-
2005-
2006 pIdxInfo->orderByConsumed = 0;-
2007 pIdxInfo->idxFlags &= ~1;-
2008 *pbIn = 1; -
2009 ((void) (0))-
2010 ;-
2011 }
executed 21 times by 1 test: end of block
Executed by:
  • Self test (438)
21
2012 }
executed 18810 times by 1 test: end of block
Executed by:
  • Self test (438)
18810
2013 }
executed 20798 times by 1 test: end of block
Executed by:
  • Self test (438)
20798
2014 pNew->u.vtab.omitMask &= ~mNoOmit;-
2015-
2016 pNew->nLTerm = mxTerm+1;-
2017 for(i=0; i<=mxTerm
i<=mxTermDescription
TRUEevaluated 18810 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11834 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
11834-18810
2018 if( pNew->aLTerm[i]==0
pNew->aLTerm[i]==0Description
TRUEnever evaluated
FALSEevaluated 18810 times by 1 test
Evaluated by:
  • Self test (438)
){
0-18810
2019-
2020-
2021 sqlite3ErrorMsg(pParse,"%s.xBestIndex malfunction",pSrc->pTab->zName);-
2022 ;-
2023 return
never executed: return 1;
1;
never executed: return 1;
0
2024 }-
2025 }
executed 18810 times by 1 test: end of block
Executed by:
  • Self test (438)
18810
2026 -
2027 ((void) (0))-
2028 ;-
2029 pNew->u.vtab.idxNum = pIdxInfo->idxNum;-
2030 pNew->u.vtab.needFree = pIdxInfo->needToFreeIdxStr;-
2031 pIdxInfo->needToFreeIdxStr = 0;-
2032 pNew->u.vtab.idxStr = pIdxInfo->idxStr;-
2033 pNew->u.vtab.isOrdered = (i8)(pIdxInfo->orderByConsumed
pIdxInfo->orderByConsumedDescription
TRUEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11818 times by 1 test
Evaluated by:
  • Self test (438)
?
16-11818
2034 pIdxInfo->nOrderBy : 0);-
2035 pNew->rSetup = 0;-
2036 pNew->rRun = sqlite3LogEstFromDouble(pIdxInfo->estimatedCost);-
2037 pNew->nOut = sqlite3LogEst(pIdxInfo->estimatedRows);-
2038-
2039-
2040-
2041 if( pIdxInfo->idxFlags & 1
pIdxInfo->idxFlags & 1Description
TRUEevaluated 33 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11801 times by 1 test
Evaluated by:
  • Self test (438)
){
33-11801
2042 pNew->wsFlags |= 0x00001000;-
2043 }
executed 33 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
33
2044 pNew->wsFlags &= ~0x00001000;-
2045 }
executed 11801 times by 1 test: end of block
Executed by:
  • Self test (438)
11801
2046 rc = whereLoopInsert(pBuilder, pNew);-
2047 if( pNew->u.vtab.needFree
pNew->u.vtab.needFreeDescription
TRUEevaluated 41 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11793 times by 1 test
Evaluated by:
  • Self test (438)
){
41-11793
2048 sqlite3_free(pNew->u.vtab.idxStr);-
2049 pNew->u.vtab.needFree = 0;-
2050 }
executed 41 times by 1 test: end of block
Executed by:
  • Self test (438)
41
2051 -
2052-
2053 ;-
2054-
2055 return
executed 11834 times by 1 test: return rc;
Executed by:
  • Self test (438)
rc;
executed 11834 times by 1 test: return rc;
Executed by:
  • Self test (438)
11834
2056}-
2057const char *sqlite3_vtab_collation(sqlite3_index_info *pIdxInfo, int iCons){-
2058 HiddenIndexInfo *pHidden = (HiddenIndexInfo*)&pIdxInfo[1];-
2059 const char *zRet = 0;-
2060 if( iCons>=0
iCons>=0Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
&& iCons<pIdxInfo->nConstraint
iCons<pIdxInfo->nConstraintDescription
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-29
2061 CollSeq *pC = 0;-
2062 int iTerm = pIdxInfo->aConstraint[iCons].iTermOffset;-
2063 Expr *pX = pHidden->pWC->a[iTerm].pExpr;-
2064 if( pX->pLeft
pX->pLeftDescription
TRUEevaluated 28 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
){
1-28
2065 pC = sqlite3BinaryCompareCollSeq(pHidden->pParse, pX->pLeft, pX->pRight);-
2066 }
executed 28 times by 1 test: end of block
Executed by:
  • Self test (438)
28
2067 zRet = (pC
pCDescription
TRUEevaluated 28 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
? pC->zName : sqlite3StrBINARY);
1-28
2068 }
executed 29 times by 1 test: end of block
Executed by:
  • Self test (438)
29
2069 return
executed 29 times by 1 test: return zRet;
Executed by:
  • Self test (438)
zRet;
executed 29 times by 1 test: return zRet;
Executed by:
  • Self test (438)
29
2070}-
2071static int whereLoopAddVirtual(-
2072 WhereLoopBuilder *pBuilder,-
2073 Bitmask mPrereq,-
2074 Bitmask mUnusable-
2075){-
2076 int rc = 0;-
2077 WhereInfo *pWInfo;-
2078 Parse *pParse;-
2079 WhereClause *pWC;-
2080 struct SrcList_item *pSrc;-
2081 sqlite3_index_info *p;-
2082 int nConstraint;-
2083 int bIn;-
2084 WhereLoop *pNew;-
2085 Bitmask mBest;-
2086 u16 mNoOmit;-
2087-
2088 -
2089 ((void) (0))-
2090 ;-
2091 pWInfo = pBuilder->pWInfo;-
2092 pParse = pWInfo->pParse;-
2093 pWC = pBuilder->pWC;-
2094 pNew = pBuilder->pNew;-
2095 pSrc = &pWInfo->pTabList->a[pNew->iTab];-
2096 -
2097 ((void) (0))-
2098 ;-
2099 p = allocateIndexInfo(pParse, pWC, mUnusable, pSrc, pBuilder->pOrderBy,-
2100 &mNoOmit);-
2101 if( p==0
p==0Description
TRUEnever evaluated
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
) return
never executed: return 7;
7;
never executed: return 7;
0-11464
2102 pNew->rSetup = 0;-
2103 pNew->wsFlags = 0x00000400;-
2104 pNew->nLTerm = 0;-
2105 pNew->u.vtab.needFree = 0;-
2106 nConstraint = p->nConstraint;-
2107 if( whereLoopResize(pParse->db, pNew, nConstraint)
whereLoopResiz..., nConstraint)Description
TRUEnever evaluated
FALSEevaluated 11464 times by 1 test
Evaluated by:
  • Self test (438)
){
0-11464
2108 sqlite3DbFree(pParse->db, p);-
2109 return
never executed: return 7;
7;
never executed: return 7;
0
2110 }-
2111-
2112-
2113 ;-
2114 ;-
2115 rc = whereLoopAddVirtualOne(pBuilder, mPrereq, ((Bitmask)-1), 0, p, mNoOmit, &bIn);-
2116-
2117-
2118-
2119-
2120-
2121-
2122 if( rc==0
rc==0Description
TRUEevaluated 11462 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(mBest = (pNew... ~mPrereq))!=0Description
TRUEevaluated 633 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10829 times by 1 test
Evaluated by:
  • Self test (438)
mBest = (pNew->prereq & ~mPrereq))!=0
(mBest = (pNew... ~mPrereq))!=0Description
TRUEevaluated 633 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10829 times by 1 test
Evaluated by:
  • Self test (438)
){
2-11462
2123 int seenZero = 0;-
2124 int seenZeroNoIN = 0;-
2125 Bitmask mPrev = 0;-
2126 Bitmask mBestNoIn = 0;-
2127-
2128-
2129-
2130 if( bIn
bInDescription
TRUEnever evaluated
FALSEevaluated 633 times by 1 test
Evaluated by:
  • Self test (438)
){
0-633
2131 ;-
2132 rc = whereLoopAddVirtualOne(-
2133 pBuilder, mPrereq, ((Bitmask)-1), 0x0001, p, mNoOmit, &bIn);-
2134 -
2135 ((void) (0))-
2136 ;-
2137 mBestNoIn = pNew->prereq & ~mPrereq;-
2138 if( mBestNoIn==0
mBestNoIn==0Description
TRUEnever evaluated
FALSEnever evaluated
){
0
2139 seenZero = 1;-
2140 seenZeroNoIN = 1;-
2141 }
never executed: end of block
0
2142 }
never executed: end of block
0
2143-
2144-
2145-
2146 while( rc==0
rc==0Description
TRUEevaluated 1292 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-1292
2147 int i;-
2148 Bitmask mNext = ((Bitmask)-1);-
2149 -
2150 ((void) (0))-
2151 ;-
2152 for(i=0; i<nConstraint
i<nConstraintDescription
TRUEevaluated 1682 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1292 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
1292-1682
2153 Bitmask mThis = (-
2154 pWC->a[p->aConstraint[i].iTermOffset].prereqRight & ~mPrereq-
2155 );-
2156 if( mThis>mPrev
mThis>mPrevDescription
TRUEevaluated 687 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 995 times by 1 test
Evaluated by:
  • Self test (438)
&& mThis<mNext
mThis<mNextDescription
TRUEevaluated 660 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
) mNext = mThis;
executed 660 times by 1 test: mNext = mThis;
Executed by:
  • Self test (438)
27-995
2157 }
executed 1682 times by 1 test: end of block
Executed by:
  • Self test (438)
1682
2158 mPrev = mNext;-
2159 if( mNext==((Bitmask)-1)
mNext==((Bitmask)-1)Description
TRUEevaluated 633 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 659 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 633 times by 1 test: break;
Executed by:
  • Self test (438)
633-659
2160 if( mNext==mBest
mNext==mBestDescription
TRUEevaluated 631 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 28 times by 1 test
Evaluated by:
  • Self test (438)
|| mNext==mBestNoIn
mNext==mBestNoInDescription
TRUEnever evaluated
FALSEevaluated 28 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 631 times by 1 test: continue;
Executed by:
  • Self test (438)
0-631
2161 -
2162 ;-
2163 rc = whereLoopAddVirtualOne(-
2164 pBuilder, mPrereq, mNext|mPrereq, 0, p, mNoOmit, &bIn);-
2165 if( pNew->prereq==mPrereq
pNew->prereq==mPrereqDescription
TRUEevaluated 23 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
){
5-23
2166 seenZero = 1;-
2167 if( bIn==0
bIn==0Description
TRUEevaluated 23 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
) seenZeroNoIN = 1;
executed 23 times by 1 test: seenZeroNoIN = 1;
Executed by:
  • Self test (438)
0-23
2168 }
executed 23 times by 1 test: end of block
Executed by:
  • Self test (438)
23
2169 }
executed 28 times by 1 test: end of block
Executed by:
  • Self test (438)
28
2170-
2171-
2172-
2173-
2174 if( rc==0
rc==0Description
TRUEevaluated 633 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
&& seenZero==0
seenZero==0Description
TRUEevaluated 610 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 23 times by 1 test
Evaluated by:
  • Self test (438)
){
0-633
2175 ;-
2176 rc = whereLoopAddVirtualOne(-
2177 pBuilder, mPrereq, mPrereq, 0, p, mNoOmit, &bIn);-
2178 if( bIn==0
bIn==0Description
TRUEevaluated 610 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
) seenZeroNoIN = 1;
executed 610 times by 1 test: seenZeroNoIN = 1;
Executed by:
  • Self test (438)
0-610
2179 }
executed 610 times by 1 test: end of block
Executed by:
  • Self test (438)
610
2180-
2181-
2182-
2183-
2184 if( rc==0
rc==0Description
TRUEevaluated 367 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 266 times by 1 test
Evaluated by:
  • Self test (438)
&& seenZeroNoIN==0
seenZeroNoIN==0Description
TRUEnever evaluated
FALSEevaluated 367 times by 1 test
Evaluated by:
  • Self test (438)
){
0-367
2185 ;-
2186 rc = whereLoopAddVirtualOne(-
2187 pBuilder, mPrereq, mPrereq, 0x0001, p, mNoOmit, &bIn);-
2188 }
never executed: end of block
0
2189 }
executed 633 times by 1 test: end of block
Executed by:
  • Self test (438)
633
2190-
2191 if( p->needToFreeIdxStr
p->needToFreeIdxStrDescription
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11462 times by 1 test
Evaluated by:
  • Self test (438)
) sqlite3_free(p->idxStr);
executed 2 times by 1 test: sqlite3_free(p->idxStr);
Executed by:
  • Self test (438)
2-11462
2192 sqlite3DbFreeNN(pParse->db, p);-
2193 ;-
2194 return
executed 11464 times by 1 test: return rc;
Executed by:
  • Self test (438)
rc;
executed 11464 times by 1 test: return rc;
Executed by:
  • Self test (438)
11464
2195}-
2196-
2197-
2198-
2199-
2200-
2201-
2202static int whereLoopAddOr(-
2203 WhereLoopBuilder *pBuilder,-
2204 Bitmask mPrereq,-
2205 Bitmask mUnusable-
2206){-
2207 WhereInfo *pWInfo = pBuilder->pWInfo;-
2208 WhereClause *pWC;-
2209 WhereLoop *pNew;-
2210 WhereTerm *pTerm, *pWCEnd;-
2211 int rc = 0;-
2212 int iCur;-
2213 WhereClause tempWC;-
2214 WhereLoopBuilder sSubBuild;-
2215 WhereOrSet sSum, sCur;-
2216 struct SrcList_item *pItem;-
2217-
2218 pWC = pBuilder->pWC;-
2219 pWCEnd = pWC->a + pWC->nTerm;-
2220 pNew = pBuilder->pNew;-
2221 memset(&sSum, 0, sizeof(sSum));-
2222 pItem = pWInfo->pTabList->a + pNew->iTab;-
2223 iCur = pItem->iCursor;-
2224-
2225 for(pTerm=pWC->a; pTerm<pWCEnd
pTerm<pWCEndDescription
TRUEevaluated 44000 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 23675 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
&& rc==0
rc==0Description
TRUEevaluated 44000 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEnever evaluated
; pTerm++){
0-44000
2226 if( (
(pTerm->eOperator & 0x0200)!=0Description
TRUEevaluated 4171 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 39829 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
pTerm->eOperator & 0x0200)!=0
(pTerm->eOperator & 0x0200)!=0Description
TRUEevaluated 4171 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 39829 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
4171-39829
2227 && (
(pTerm->u.pOrI...->maskSelf)!=0Description
TRUEevaluated 3854 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 317 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->u.pOrInfo->indexable & pNew->maskSelf)!=0
(pTerm->u.pOrI...->maskSelf)!=0Description
TRUEevaluated 3854 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 317 times by 1 test
Evaluated by:
  • Self test (438)
317-3854
2228 ){-
2229 WhereClause * const pOrWC = &pTerm->u.pOrInfo->wc;-
2230 WhereTerm * const pOrWCEnd = &pOrWC->a[pOrWC->nTerm];-
2231 WhereTerm *pOrTerm;-
2232 int once = 1;-
2233 int i, j;-
2234-
2235 sSubBuild = *pBuilder;-
2236 sSubBuild.pOrderBy = 0;-
2237 sSubBuild.pOrSet = &sCur;-
2238-
2239 ;-
2240 for(pOrTerm=pOrWC->a; pOrTerm<pOrWCEnd
pOrTerm<pOrWCEndDescription
TRUEevaluated 19689 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 2496 times by 1 test
Evaluated by:
  • Self test (438)
; pOrTerm++){
2496-19689
2241 if( (
(pOrTerm->eOpe...r & 0x0400)!=0Description
TRUEevaluated 8541 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11148 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
pOrTerm->eOperator & 0x0400)!=0
(pOrTerm->eOpe...r & 0x0400)!=0Description
TRUEevaluated 8541 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11148 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
){
8541-11148
2242 sSubBuild.pWC = &pOrTerm->u.pAndInfo->wc;-
2243 }
executed 8541 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( pOrTerm->leftCursor==iCur
pOrTerm->leftCursor==iCurDescription
TRUEevaluated 10994 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 154 times by 1 test
Evaluated by:
  • Self test (438)
){
154-10994
2244 tempWC.pWInfo = pWC->pWInfo;-
2245 tempWC.pOuter = pWC;-
2246 tempWC.op = 44;-
2247 tempWC.nTerm = 1;-
2248 tempWC.a = pOrTerm;-
2249 sSubBuild.pWC = &tempWC;-
2250 }
executed 10994 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
else{
10994
2251 continue;
executed 154 times by 1 test: continue;
Executed by:
  • Self test (438)
154
2252 }-
2253 sCur.n = 0;-
2254 if( ((
((pItem->pTab)->nModuleArg)Description
TRUEevaluated 52 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 19483 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
pItem->pTab)->nModuleArg)
((pItem->pTab)->nModuleArg)Description
TRUEevaluated 52 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 19483 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
){
52-19483
2255 rc = whereLoopAddVirtual(&sSubBuild, mPrereq, mUnusable);-
2256 }
executed 52 times by 1 test: end of block
Executed by:
  • Self test (438)
else
52
2257-
2258 {-
2259 rc = whereLoopAddBtree(&sSubBuild, mPrereq);-
2260 }
executed 19483 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
19483
2261 if( rc==0
rc==0Description
TRUEevaluated 19535 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEnever evaluated
){
0-19535
2262 rc = whereLoopAddOr(&sSubBuild, mPrereq, mUnusable);-
2263 }
executed 19535 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
19535
2264 -
2265 ((void) (0))-
2266 ;-
2267 if( sCur.n==0
sCur.n==0Description
TRUEevaluated 1358 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 18177 times by 1 test
Evaluated by:
  • Self test (438)
){
1358-18177
2268 sSum.n = 0;-
2269 break;
executed 1358 times by 2 tests: break;
Executed by:
  • Self test (34)
  • Self test (438)
1358
2270 }else if( once
onceDescription
TRUEevaluated 2580 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15597 times by 1 test
Evaluated by:
  • Self test (438)
){
2580-15597
2271 whereOrMove(&sSum, &sCur);-
2272 once = 0;-
2273 }
executed 2580 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
2580
2274 WhereOrSet sPrev;-
2275 whereOrMove(&sPrev, &sSum);-
2276 sSum.n = 0;-
2277 for(i=0; i<sPrev.n
i<sPrev.nDescription
TRUEevaluated 15607 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15597 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
15597-15607
2278 for(j=0; j<sCur.n
j<sCur.nDescription
TRUEevaluated 15637 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15607 times by 1 test
Evaluated by:
  • Self test (438)
; j++){
15607-15637
2279 whereOrInsert(&sSum, sPrev.a[i].prereq | sCur.a[j].prereq,-
2280 sqlite3LogEstAdd(sPrev.a[i].rRun, sCur.a[j].rRun),-
2281 sqlite3LogEstAdd(sPrev.a[i].nOut, sCur.a[j].nOut));-
2282 }
executed 15637 times by 1 test: end of block
Executed by:
  • Self test (438)
15637
2283 }
executed 15607 times by 1 test: end of block
Executed by:
  • Self test (438)
15607
2284 }
executed 15597 times by 1 test: end of block
Executed by:
  • Self test (438)
15597
2285 }-
2286 pNew->nLTerm = 1;-
2287 pNew->aLTerm[0] = pTerm;-
2288 pNew->wsFlags = 0x00002000;-
2289 pNew->rSetup = 0;-
2290 pNew->iSortIdx = 0;-
2291 memset(&pNew->u, 0, sizeof(pNew->u));-
2292 for(i=0; rc==0
rc==0Description
TRUEevaluated 6364 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEnever evaluated
&& i<sSum.n
i<sSum.nDescription
TRUEevaluated 2510 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3854 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
; i++){
0-6364
2293 pNew->rRun = sSum.a[i].rRun + 1;-
2294 pNew->nOut = sSum.a[i].nOut;-
2295 pNew->prereq = sSum.a[i].prereq;-
2296 rc = whereLoopInsert(pBuilder, pNew);-
2297 }
executed 2510 times by 1 test: end of block
Executed by:
  • Self test (438)
2510
2298 ;-
2299 }
executed 3854 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
3854
2300 }
executed 44000 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
44000
2301 return
executed 23675 times by 2 tests: return rc;
Executed by:
  • Self test (34)
  • Self test (438)
rc;
executed 23675 times by 2 tests: return rc;
Executed by:
  • Self test (34)
  • Self test (438)
23675
2302}-
2303-
2304-
2305-
2306-
2307static int whereLoopAddAll(WhereLoopBuilder *pBuilder){-
2308 WhereInfo *pWInfo = pBuilder->pWInfo;-
2309 Bitmask mPrereq = 0;-
2310 Bitmask mPrior = 0;-
2311 int iTab;-
2312 SrcList *pTabList = pWInfo->pTabList;-
2313 struct SrcList_item *pItem;-
2314 struct SrcList_item *pEnd = &pTabList->a[pWInfo->nLevel];-
2315 sqlite3 *db = pWInfo->pParse->db;-
2316 int rc = 0;-
2317 WhereLoop *pNew;-
2318 u8 priorJointype = 0;-
2319-
2320-
2321 pNew = pBuilder->pNew;-
2322 whereLoopInit(pNew);-
2323-
2324-
2325-
2326-
2327-
2328-
2329 pBuilder->iPlanLimit = 10000;-
2330 for(iTab=0, pItem=pTabList->a; pItem<pEnd
pItem<pEndDescription
TRUEevaluated 251964 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 305023 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; iTab++, pItem++){
251964-305023
2331 Bitmask mUnusable = 0;-
2332 pNew->iTab = iTab;-
2333 pBuilder->iPlanLimit += 1000;-
2334 pNew->maskSelf = sqlite3WhereGetMask(&pWInfo->sMaskSet, pItem->iCursor);-
2335 if( ((
((pItem->fg.jo...08|0x0002))!=0Description
TRUEevaluated 684 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 251280 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pItem->fg.jointype|priorJointype) & (0x0008|0x0002))!=0
((pItem->fg.jo...08|0x0002))!=0Description
TRUEevaluated 684 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 251280 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
684-251280
2336-
2337-
2338 mPrereq = mPrior;-
2339 }
executed 684 times by 1 test: end of block
Executed by:
  • Self test (438)
684
2340 priorJointype = pItem->fg.jointype;-
2341-
2342 if( ((
((pItem->pTab)->nModuleArg)Description
TRUEevaluated 11412 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 240552 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pItem->pTab)->nModuleArg)
((pItem->pTab)->nModuleArg)Description
TRUEevaluated 11412 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 240552 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
11412-240552
2343 struct SrcList_item *p;-
2344 for(p=&pItem[1]; p<pEnd
p<pEndDescription
TRUEevaluated 898 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11412 times by 1 test
Evaluated by:
  • Self test (438)
; p++){
898-11412
2345 if( mUnusable
mUnusableDescription
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 897 times by 1 test
Evaluated by:
  • Self test (438)
|| (
(p->fg.jointyp...x0008|0x0002))Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 868 times by 1 test
Evaluated by:
  • Self test (438)
p->fg.jointype & (0x0008|0x0002))
(p->fg.jointyp...x0008|0x0002))Description
TRUEevaluated 29 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 868 times by 1 test
Evaluated by:
  • Self test (438)
){
1-897
2346 mUnusable |= sqlite3WhereGetMask(&pWInfo->sMaskSet, p->iCursor);-
2347 }
executed 30 times by 1 test: end of block
Executed by:
  • Self test (438)
30
2348 }
executed 898 times by 1 test: end of block
Executed by:
  • Self test (438)
898
2349 rc = whereLoopAddVirtual(pBuilder, mPrereq, mUnusable);-
2350 }
executed 11412 times by 1 test: end of block
Executed by:
  • Self test (438)
else
11412
2351-
2352 {-
2353 rc = whereLoopAddBtree(pBuilder, mPrereq);-
2354 }
executed 240552 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
240552
2355 if( rc==0
rc==0Description
TRUEevaluated 251637 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 327 times by 1 test
Evaluated by:
  • Self test (438)
&& pBuilder->pWC->hasOr
pBuilder->pWC->hasOrDescription
TRUEevaluated 4140 times by 2 tests
Evaluated by:
  • Self test (34)
  • Self test (438)
FALSEevaluated 247497 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
327-251637
2356 rc = whereLoopAddOr(pBuilder, mPrereq, mUnusable);-
2357 }
executed 4140 times by 2 tests: end of block
Executed by:
  • Self test (34)
  • Self test (438)
4140
2358 mPrior |= pNew->maskSelf;-
2359 if( rc
rcDescription
TRUEevaluated 327 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 251637 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
|| db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 251633 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
4-251637
2360 if( rc==101
rc==101Description
TRUEnever evaluated
FALSEevaluated 331 times by 1 test
Evaluated by:
  • Self test (438)
){
0-331
2361-
2362 rc = 0;-
2363 }
never executed: end of block
else{
0
2364 break;
executed 331 times by 1 test: break;
Executed by:
  • Self test (438)
331
2365 }-
2366 }-
2367 }
executed 251633 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
251633
2368-
2369 whereLoopClear(db, pNew);-
2370 return
executed 305354 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
rc;
executed 305354 times by 435 tests: return rc;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
305354
2371}-
2372static i8 wherePathSatisfiesOrderBy(-
2373 WhereInfo *pWInfo,-
2374 ExprList *pOrderBy,-
2375 WherePath *pPath,-
2376 u16 wctrlFlags,-
2377 u16 nLoop,-
2378 WhereLoop *pLast,-
2379 Bitmask *pRevMask-
2380){-
2381 u8 revSet;-
2382 u8 rev;-
2383 u8 revIdx;-
2384 u8 isOrderDistinct;-
2385 u8 distinctColumns;-
2386 u8 isMatch;-
2387 u16 eqOpMask;-
2388 u16 nKeyCol;-
2389 u16 nColumn;-
2390 u16 nOrderBy;-
2391 int iLoop;-
2392 int i, j;-
2393 int iCur;-
2394 int iColumn;-
2395 WhereLoop *pLoop = 0;-
2396 WhereTerm *pTerm;-
2397 Expr *pOBExpr;-
2398 CollSeq *pColl;-
2399 Index *pIndex;-
2400 sqlite3 *db = pWInfo->pParse->db;-
2401 Bitmask obSat = 0;-
2402 Bitmask obDone;-
2403 Bitmask orderDistinctMask;-
2404 Bitmask ready;-
2405 -
2406 ((void) (0))-
2407 ;-
2408 if( nLoop
nLoopDescription
TRUEevaluated 3577 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 159223 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& (((
(((db)->dbOptF...&(0x0040))!=0)Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3553 times by 1 test
Evaluated by:
  • Self test (438)
db)->dbOptFlags&(0x0040))!=0)
(((db)->dbOptF...&(0x0040))!=0)Description
TRUEevaluated 24 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3553 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 24 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 24 times by 1 test: return 0;
Executed by:
  • Self test (438)
24-159223
2409-
2410 nOrderBy = pOrderBy->nExpr;-
2411 ;-
2412 if( nOrderBy>((int)(sizeof(Bitmask)*8))-1
nOrderBy>((int...Bitmask)*8))-1Description
TRUEnever evaluated
FALSEevaluated 162776 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
never executed: return 0;
0;
never executed: return 0;
0-162776
2413 isOrderDistinct = 1;-
2414 obDone = (((Bitmask)1)<<(nOrderBy))-1;-
2415 orderDistinctMask = 0;-
2416 ready = 0;-
2417 eqOpMask = 0x0002 | 0x0080 | 0x0100;-
2418 if( wctrlFlags & 0x0800
wctrlFlags & 0x0800Description
TRUEevaluated 84834 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 77942 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) eqOpMask |= 0x0001;
executed 84834 times by 435 tests: eqOpMask |= 0x0001;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
77942-84834
2419 for(iLoop=0; isOrderDistinct
isOrderDistinctDescription
TRUEevaluated 249811 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 77827 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
&& obSat<obDone
obSat<obDoneDescription
TRUEevaluated 166728 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 83083 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& iLoop<=nLoop
iLoop<=nLoopDescription
TRUEevaluated 166381 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 347 times by 1 test
Evaluated by:
  • Self test (438)
; iLoop++){
347-249811
2420 if( iLoop>0
iLoop>0Description
TRUEevaluated 3605 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 162776 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) ready |= pLoop->maskSelf;
executed 3605 times by 1 test: ready |= pLoop->maskSelf;
Executed by:
  • Self test (438)
3605-162776
2421 if( iLoop<nLoop
iLoop<nLoopDescription
TRUEevaluated 3952 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 162429 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
3952-162429
2422 pLoop = pPath->aLoop[iLoop];-
2423 if( wctrlFlags & 0x0800
wctrlFlags & 0x0800Description
TRUEevaluated 2793 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1159 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 2793 times by 1 test: continue;
Executed by:
  • Self test (438)
1159-2793
2424 }
executed 1159 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
1159
2425 pLoop = pLast;-
2426 }
executed 162429 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
162429
2427 if( pLoop->wsFlags & 0x00000400
pLoop->wsFlags & 0x00000400Description
TRUEevaluated 764 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 162824 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
764-162824
2428 if( pLoop->u.vtab.isOrdered
pLoop->u.vtab.isOrderedDescription
TRUEevaluated 32 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 732 times by 1 test
Evaluated by:
  • Self test (438)
) obSat = obDone;
executed 32 times by 1 test: obSat = obDone;
Executed by:
  • Self test (438)
32-732
2429 break;
executed 764 times by 1 test: break;
Executed by:
  • Self test (438)
764
2430 }else{-
2431 pLoop->u.btree.nIdxCol = 0;-
2432 }
executed 162824 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
162824
2433 iCur = pWInfo->pTabList->a[pLoop->iTab].iCursor;-
2434-
2435-
2436-
2437-
2438-
2439-
2440 for(i=0; i<nOrderBy
i<nOrderByDescription
TRUEevaluated 178373 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 162824 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i++){
162824-178373
2441 if( (((
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 719 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 177654 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
Bitmask)1)<<(i)) & obSat
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 719 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 177654 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 719 times by 1 test: continue;
Executed by:
  • Self test (438)
719-177654
2442 pOBExpr = sqlite3ExprSkipCollate(pOrderBy->a[i].pExpr);-
2443 if( pOBExpr->op!=158
pOBExpr->op!=158Description
TRUEevaluated 31227 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 146427 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 31227 times by 1 test: continue;
Executed by:
  • Self test (438)
31227-146427
2444 if( pOBExpr->iTable!=iCur
pOBExpr->iTable!=iCurDescription
TRUEevaluated 6717 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 139710 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 6717 times by 1 test: continue;
Executed by:
  • Self test (438)
6717-139710
2445 pTerm = sqlite3WhereFindTerm(&pWInfo->sWC, iCur, pOBExpr->iColumn,-
2446 ~ready, eqOpMask, 0);-
2447 if( pTerm==0
pTerm==0Description
TRUEevaluated 136695 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 3015 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 136695 times by 435 tests: continue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
3015-136695
2448 if( pTerm->eOperator==0x0001
pTerm->eOperator==0x0001Description
TRUEevaluated 613 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2402 times by 1 test
Evaluated by:
  • Self test (438)
){
613-2402
2449-
2450-
2451-
2452 -
2453 ((void) (0))-
2454 ;-
2455 for(j=0; j<pLoop->nLTerm
j<pLoop->nLTermDescription
TRUEevaluated 561 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 238 times by 1 test
Evaluated by:
  • Self test (438)
&& pTerm!=pLoop->aLTerm[j]
pTerm!=pLoop->aLTerm[j]Description
TRUEevaluated 186 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 375 times by 1 test
Evaluated by:
  • Self test (438)
; j++){}
executed 186 times by 1 test: end of block
Executed by:
  • Self test (438)
186-561
2456 if( j>=pLoop->nLTerm
j>=pLoop->nLTermDescription
TRUEevaluated 238 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 375 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 238 times by 1 test: continue;
Executed by:
  • Self test (438)
238-375
2457 }
executed 375 times by 1 test: end of block
Executed by:
  • Self test (438)
375
2458 if( (
(pTerm->eOpera...02|0x0080))!=0Description
TRUEevaluated 2329 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 448 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->eOperator&(0x0002|0x0080))!=0
(pTerm->eOpera...02|0x0080))!=0Description
TRUEevaluated 2329 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 448 times by 1 test
Evaluated by:
  • Self test (438)
&& pOBExpr->iColumn>=0
pOBExpr->iColumn>=0Description
TRUEevaluated 2324 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
){
5-2329
2459 if( sqlite3ExprCollSeqMatch(pWInfo->pParse,
sqlite3ExprCol...erm->pExpr)==0Description
TRUEevaluated 11 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2313 times by 1 test
Evaluated by:
  • Self test (438)
11-2313
2460 pOrderBy->a[i].pExpr, pTerm->pExpr)==0
sqlite3ExprCol...erm->pExpr)==0Description
TRUEevaluated 11 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2313 times by 1 test
Evaluated by:
  • Self test (438)
){
11-2313
2461 continue;
executed 11 times by 1 test: continue;
Executed by:
  • Self test (438)
11
2462 }-
2463 ;-
2464 }
executed 2313 times by 1 test: end of block
Executed by:
  • Self test (438)
2313
2465 obSat |= (((Bitmask)1)<<(i));-
2466 }
executed 2766 times by 1 test: end of block
Executed by:
  • Self test (438)
2766
2467-
2468 if( (
(pLoop->wsFlag...0x00001000)==0Description
TRUEevaluated 162111 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 713 times by 1 test
Evaluated by:
  • Self test (438)
pLoop->wsFlags & 0x00001000)==0
(pLoop->wsFlag...0x00001000)==0Description
TRUEevaluated 162111 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 713 times by 1 test
Evaluated by:
  • Self test (438)
){
713-162111
2469 if( pLoop->wsFlags & 0x00000100
pLoop->wsFlags & 0x00000100Description
TRUEevaluated 137362 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 24749 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
24749-137362
2470 pIndex = 0;-
2471 nKeyCol = 0;-
2472 nColumn = 1;-
2473 }
executed 137362 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else if( (
(pIndex = pLoo...ree.pIndex)==0Description
TRUEevaluated 752 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 23997 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
pIndex = pLoop->u.btree.pIndex)==0
(pIndex = pLoo...ree.pIndex)==0Description
TRUEevaluated 752 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 23997 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
|| pIndex->bUnordered
pIndex->bUnorderedDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 23994 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
3-137362
2474 return
executed 755 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 755 times by 1 test: return 0;
Executed by:
  • Self test (438)
755
2475 }else{-
2476 nKeyCol = pIndex->nKeyCol;-
2477 nColumn = pIndex->nColumn;-
2478 -
2479 ((void) (0))-
2480 ;-
2481 -
2482 ((void) (0))-
2483 -
2484 ;-
2485 isOrderDistinct = ((pIndex)->onError!=0);-
2486 }
executed 23994 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
23994
2487-
2488-
2489-
2490-
2491 rev = revSet = 0;-
2492 distinctColumns = 0;-
2493 for(j=0; j<nColumn
j<nColumnDescription
TRUEevaluated 177697 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 83092 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; j++){
83092-177697
2494 u8 bOnce = 1;-
2495-
2496 -
2497 ((void) (0))-
2498-
2499 -
2500 ;-
2501 if( j<pLoop->u.btree.nEq
j<pLoop->u.btree.nEqDescription
TRUEevaluated 10633 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 167064 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& j>=pLoop->nSkip
j>=pLoop->nSkipDescription
TRUEevaluated 10566 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 67 times by 1 test
Evaluated by:
  • Self test (438)
){
67-167064
2502 u16 eOp = pLoop->aLTerm[j]->eOperator;-
2503 if( (
(eOp & eqOpMask)!=0Description
TRUEevaluated 9783 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 783 times by 1 test
Evaluated by:
  • Self test (438)
eOp & eqOpMask)!=0
(eOp & eqOpMask)!=0Description
TRUEevaluated 9783 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 783 times by 1 test
Evaluated by:
  • Self test (438)
){
783-9783
2504 if( eOp & 0x0100
eOp & 0x0100Description
TRUEevaluated 53 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 9730 times by 1 test
Evaluated by:
  • Self test (438)
){
53-9730
2505 ;-
2506 isOrderDistinct = 0;-
2507 }
executed 53 times by 1 test: end of block
Executed by:
  • Self test (438)
53
2508 continue;
executed 9783 times by 1 test: continue;
Executed by:
  • Self test (438)
9783
2509 }else if( (
(eOp & 0x0001)Description
TRUEevaluated 783 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
eOp & 0x0001)
(eOp & 0x0001)Description
TRUEevaluated 783 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-783
2510-
2511-
2512-
2513-
2514 Expr *pX = pLoop->aLTerm[j]->pExpr;-
2515 for(i=j+1; i<pLoop->u.btree.nEq
i<pLoop->u.btree.nEqDescription
TRUEevaluated 294 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 771 times by 1 test
Evaluated by:
  • Self test (438)
; i++){
294-771
2516 if( pLoop->aLTerm[i]->pExpr==pX
pLoop->aLTerm[i]->pExpr==pXDescription
TRUEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 282 times by 1 test
Evaluated by:
  • Self test (438)
){
12-282
2517 -
2518 ((void) (0))-
2519 ;-
2520 bOnce = 0;-
2521 break;
executed 12 times by 1 test: break;
Executed by:
  • Self test (438)
12
2522 }-
2523 }
executed 282 times by 1 test: end of block
Executed by:
  • Self test (438)
282
2524 }
executed 783 times by 1 test: end of block
Executed by:
  • Self test (438)
783
2525 }
executed 783 times by 1 test: end of block
Executed by:
  • Self test (438)
783
2526-
2527-
2528-
2529-
2530 if( pIndex
pIndexDescription
TRUEevaluated 30552 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 137362 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
30552-137362
2531 iColumn = pIndex->aiColumn[j];-
2532 revIdx = pIndex->aSortOrder[j];-
2533 if( iColumn==pIndex->pTable->iPKey
iColumn==pIndex->pTable->iPKeyDescription
TRUEevaluated 11014 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 19538 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) iColumn = (-1);
executed 11014 times by 2 tests: iColumn = (-1);
Executed by:
  • Self test (438)
  • Self test (47)
11014-19538
2534 }
executed 30552 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
else{
30552
2535 iColumn = (-1);-
2536 revIdx = 0;-
2537 }
executed 137362 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
137362
2538-
2539-
2540-
2541-
2542 if( isOrderDistinct
isOrderDistinctDescription
TRUEevaluated 140117 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 27797 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
27797-140117
2543 && iColumn>=0
iColumn>=0Description
TRUEevaluated 2317 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 137800 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
2317-137800
2544 && j>=pLoop->u.btree.nEq
j>=pLoop->u.btree.nEqDescription
TRUEevaluated 2135 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 182 times by 1 test
Evaluated by:
  • Self test (438)
182-2135
2545 && pIndex->pTable->aCol[iColumn].notNull==0
pIndex->pTable...mn].notNull==0Description
TRUEevaluated 1279 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 856 times by 1 test
Evaluated by:
  • Self test (438)
856-1279
2546 ){-
2547 isOrderDistinct = 0;-
2548 }
executed 1279 times by 1 test: end of block
Executed by:
  • Self test (438)
1279
2549-
2550-
2551-
2552-
2553 isMatch = 0;-
2554 for(i=0; bOnce
bOnceDescription
TRUEevaluated 181846 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 69210 times by 1 test
Evaluated by:
  • Self test (438)
&& i<nOrderBy
i<nOrderByDescription
TRUEevaluated 172838 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 9008 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
; i++){
9008-181846
2555 if( (((
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 10096 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 162742 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
Bitmask)1)<<(i)) & obSat
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 10096 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 162742 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 10096 times by 2 tests: continue;
Executed by:
  • Self test (438)
  • Self test (47)
10096-162742
2556 pOBExpr = sqlite3ExprSkipCollate(pOrderBy->a[i].pExpr);-
2557 ;-
2558 ;-
2559 if( (
(wctrlFlags & ...40|0x0080))==0Description
TRUEevaluated 158327 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 4415 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & (0x0040|0x0080))==0
(wctrlFlags & ...40|0x0080))==0Description
TRUEevaluated 158327 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 4415 times by 1 test
Evaluated by:
  • Self test (438)
) bOnce = 0;
executed 158327 times by 435 tests: bOnce = 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
4415-158327
2560 if( iColumn>=(-1)
iColumn>=(-1)Description
TRUEevaluated 162703 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 39 times by 1 test
Evaluated by:
  • Self test (438)
){
39-162703
2561 if( pOBExpr->op!=158
pOBExpr->op!=158Description
TRUEevaluated 29325 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 133378 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 29325 times by 1 test: continue;
Executed by:
  • Self test (438)
29325-133378
2562 if( pOBExpr->iTable!=iCur
pOBExpr->iTable!=iCurDescription
TRUEevaluated 4813 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 128565 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 4813 times by 1 test: continue;
Executed by:
  • Self test (438)
4813-128565
2563 if( pOBExpr->iColumn!=iColumn
pOBExpr->iColumn!=iColumnDescription
TRUEevaluated 38763 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 89802 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 38763 times by 1 test: continue;
Executed by:
  • Self test (438)
38763-89802
2564 }
executed 89802 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
89802
2565 Expr *pIdxExpr = pIndex->aColExpr->a[j].pExpr;-
2566 if( sqlite3ExprCompareSkip(pOBExpr, pIdxExpr, iCur)
sqlite3ExprCom...IdxExpr, iCur)Description
TRUEevaluated 19 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20 times by 1 test
Evaluated by:
  • Self test (438)
){
19-20
2567 continue;
executed 19 times by 1 test: continue;
Executed by:
  • Self test (438)
19
2568 }-
2569 }
executed 20 times by 1 test: end of block
Executed by:
  • Self test (438)
20
2570 if( iColumn!=(-1)
iColumn!=(-1)Description
TRUEevaluated 6726 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 83096 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
6726-83096
2571 pColl = sqlite3ExprNNCollSeq(pWInfo->pParse, pOrderBy->a[i].pExpr);-
2572 if( sqlite3StrICmp(pColl->zName, pIndex->azColl[j])!=0
sqlite3StrICmp...>azColl[j])!=0Description
TRUEevaluated 126 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6600 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) continue;
executed 126 times by 1 test: continue;
Executed by:
  • Self test (438)
126-6600
2573 }
executed 6600 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
6600
2574 pLoop->u.btree.nIdxCol = j+1;-
2575 isMatch = 1;-
2576 break;
executed 89696 times by 435 tests: break;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
89696
2577 }-
2578 if( isMatch
isMatchDescription
TRUEevaluated 89696 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 78218 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
&& (
(wctrlFlags & 0x0040)==0Description
TRUEevaluated 89566 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 130 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & 0x0040)==0
(wctrlFlags & 0x0040)==0Description
TRUEevaluated 89566 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 130 times by 1 test
Evaluated by:
  • Self test (438)
){
130-89696
2579-
2580-
2581 if( revSet
revSetDescription
TRUEevaluated 256 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 89310 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
256-89310
2582 if( (
(rev ^ revIdx)...a[i].sortOrderDescription
TRUEevaluated 46 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 210 times by 1 test
Evaluated by:
  • Self test (438)
rev ^ revIdx)!=pOrderBy->a[i].sortOrder
(rev ^ revIdx)...a[i].sortOrderDescription
TRUEevaluated 46 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 210 times by 1 test
Evaluated by:
  • Self test (438)
) isMatch = 0;
executed 46 times by 1 test: isMatch = 0;
Executed by:
  • Self test (438)
46-210
2583 }
executed 256 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
256
2584 rev = revIdx ^ pOrderBy->a[i].sortOrder;-
2585 if( rev
revDescription
TRUEevaluated 5725 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 83585 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) *
executed 5725 times by 1 test: *pRevMask |= (((Bitmask)1)<<(iLoop));
Executed by:
  • Self test (438)
pRevMask |= (((Bitmask)1)<<(iLoop));
executed 5725 times by 1 test: *pRevMask |= (((Bitmask)1)<<(iLoop));
Executed by:
  • Self test (438)
5725-83585
2586 revSet = 1;-
2587 }
executed 89310 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
89310
2588 }-
2589 if( isMatch
isMatchDescription
TRUEevaluated 89650 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 78264 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
78264-89650
2590 if( iColumn==(-1)
iColumn==(-1)Description
TRUEevaluated 83092 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 6558 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
6558-83092
2591 ;-
2592 distinctColumns = 1;-
2593 }
executed 83092 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
83092
2594 obSat |= (((Bitmask)1)<<(i));-
2595 }
executed 89650 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
89650
2596-
2597 if( j==0
j==0Description
TRUEevaluated 66458 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11806 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
|| j<nKeyCol
j<nKeyColDescription
TRUEevaluated 598 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11208 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
598-66458
2598 ;-
2599 isOrderDistinct = 0;-
2600 }
executed 67056 times by 1 test: end of block
Executed by:
  • Self test (438)
67056
2601 break;
executed 78264 times by 2 tests: break;
Executed by:
  • Self test (438)
  • Self test (47)
78264
2602 }-
2603 }-
2604 if( distinctColumns
distinctColumnsDescription
TRUEevaluated 83092 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 78264 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
78264-83092
2605 ;-
2606 isOrderDistinct = 1;-
2607 }
executed 83092 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
83092
2608 }
executed 161356 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
161356
2609-
2610-
2611 if( isOrderDistinct
isOrderDistinctDescription
TRUEevaluated 84242 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 77827 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
77827-84242
2612 orderDistinctMask |= pLoop->maskSelf;-
2613 for(i=0; i<nOrderBy
i<nOrderByDescription
TRUEevaluated 86451 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 84242 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i++){
84242-86451
2614 Expr *p;-
2615 Bitmask mTerm;-
2616 if( (((
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 84116 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 2335 times by 1 test
Evaluated by:
  • Self test (438)
Bitmask)1)<<(i)) & obSat
(((Bitmask)1)<<(i)) & obSatDescription
TRUEevaluated 84116 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 2335 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 84116 times by 435 tests: continue;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
2335-84116
2617 p = pOrderBy->a[i].pExpr;-
2618 mTerm = sqlite3WhereExprUsage(&pWInfo->sMaskSet,p);-
2619 if( mTerm==0
mTerm==0Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2330 times by 1 test
Evaluated by:
  • Self test (438)
&& !sqlite3ExprIsConstant(p)
!sqlite3ExprIsConstant(p)Description
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 4 times by 1 test: continue;
Executed by:
  • Self test (438)
1-2330
2620 if( (
(mTerm&~orderDistinctMask)==0Description
TRUEevaluated 114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2217 times by 1 test
Evaluated by:
  • Self test (438)
mTerm&~orderDistinctMask)==0
(mTerm&~orderDistinctMask)==0Description
TRUEevaluated 114 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2217 times by 1 test
Evaluated by:
  • Self test (438)
){
114-2217
2621 obSat |= (((Bitmask)1)<<(i));-
2622 }
executed 114 times by 1 test: end of block
Executed by:
  • Self test (438)
114
2623 }
executed 2331 times by 1 test: end of block
Executed by:
  • Self test (438)
2331
2624 }
executed 84242 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
84242
2625 }
executed 162069 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
162069
2626 if( obSat==obDone
obSat==obDoneDescription
TRUEevaluated 89261 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 72760 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 89261 times by 435 tests: return (i8)nOrderBy;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
(i8)nOrderBy;
executed 89261 times by 435 tests: return (i8)nOrderBy;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
72760-89261
2627 if( !isOrderDistinct
!isOrderDistinctDescription
TRUEevaluated 71681 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1079 times by 1 test
Evaluated by:
  • Self test (438)
){
1079-71681
2628 for(i=nOrderBy-1; i>0
i>0Description
TRUEevaluated 12026 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 70642 times by 1 test
Evaluated by:
  • Self test (438)
; i--){
12026-70642
2629 Bitmask m = (((Bitmask)1)<<(i)) - 1;-
2630 if( (
(obSat&m)==mDescription
TRUEevaluated 1039 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10987 times by 1 test
Evaluated by:
  • Self test (438)
obSat&m)==m
(obSat&m)==mDescription
TRUEevaluated 1039 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10987 times by 1 test
Evaluated by:
  • Self test (438)
) return
executed 1039 times by 1 test: return i;
Executed by:
  • Self test (438)
i;
executed 1039 times by 1 test: return i;
Executed by:
  • Self test (438)
1039-10987
2631 }
executed 10987 times by 1 test: end of block
Executed by:
  • Self test (438)
10987
2632 return
executed 70642 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 70642 times by 1 test: return 0;
Executed by:
  • Self test (438)
70642
2633 }-
2634 return
executed 1079 times by 1 test: return -1;
Executed by:
  • Self test (438)
-1;
executed 1079 times by 1 test: return -1;
Executed by:
  • Self test (438)
1079
2635}-
2636int sqlite3WhereIsSorted(WhereInfo *pWInfo){-
2637 -
2638 ((void) (0))-
2639 ;-
2640 -
2641 ((void) (0))-
2642 ;-
2643 return
executed 23 times by 1 test: return pWInfo->sorted;
Executed by:
  • Self test (438)
pWInfo->sorted;
executed 23 times by 1 test: return pWInfo->sorted;
Executed by:
  • Self test (438)
23
2644}-
2645static LogEst whereSortingCost(-
2646 WhereInfo *pWInfo,-
2647 LogEst nRow,-
2648 int nOrderBy,-
2649 int nSorted-
2650){-
2651 LogEst rScale, rSortCost;-
2652 -
2653 ((void) (0))-
2654 ;-
2655 rScale = sqlite3LogEst((nOrderBy-nSorted)*100/nOrderBy) - 66;-
2656 rSortCost = nRow + rScale + 16;-
2657-
2658-
2659-
2660 if( (
(pWInfo->wctrl...s & 0x4000)!=0Description
TRUEevaluated 576 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 25599 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->wctrlFlags & 0x4000)!=0
(pWInfo->wctrl...s & 0x4000)!=0Description
TRUEevaluated 576 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 25599 times by 1 test
Evaluated by:
  • Self test (438)
&& pWInfo->iLimit<nRow
pWInfo->iLimit<nRowDescription
TRUEevaluated 561 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
){
15-25599
2661 nRow = pWInfo->iLimit;-
2662 }
executed 561 times by 1 test: end of block
Executed by:
  • Self test (438)
561
2663 rSortCost += estLog(nRow);-
2664 return
executed 26175 times by 1 test: return rSortCost;
Executed by:
  • Self test (438)
rSortCost;
executed 26175 times by 1 test: return rSortCost;
Executed by:
  • Self test (438)
26175
2665}-
2666static int wherePathSolver(WhereInfo *pWInfo, LogEst nRowEst){-
2667 int mxChoice;-
2668 int nLoop;-
2669 Parse *pParse;-
2670 sqlite3 *db;-
2671 int iLoop;-
2672 int ii, jj;-
2673 int mxI = 0;-
2674 int nOrderBy;-
2675 LogEst mxCost = 0;-
2676 LogEst mxUnsorted = 0;-
2677 int nTo, nFrom;-
2678 WherePath *aFrom;-
2679 WherePath *aTo;-
2680 WherePath *pFrom;-
2681 WherePath *pTo;-
2682 WhereLoop *pWLoop;-
2683 WhereLoop **pX;-
2684 LogEst *aSortCost = 0;-
2685 char *pSpace;-
2686 int nSpace;-
2687-
2688 pParse = pWInfo->pParse;-
2689 db = pParse->db;-
2690 nLoop = pWInfo->nLevel;-
2691-
2692-
2693-
2694 mxChoice = (
(nLoop<=1)Description
TRUEevaluated 361928 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 8947 times by 1 test
Evaluated by:
  • Self test (438)
nLoop<=1)
(nLoop<=1)Description
TRUEevaluated 361928 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 8947 times by 1 test
Evaluated by:
  • Self test (438)
? 1 : (nLoop==2
nLoop==2Description
TRUEevaluated 8318 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 629 times by 1 test
Evaluated by:
  • Self test (438)
? 5 : 10);
629-361928
2695 -
2696 ((void) (0))-
2697 ;-
2698 ;-
2699-
2700-
2701-
2702-
2703-
2704-
2705 if( pWInfo->pOrderBy==0
pWInfo->pOrderBy==0Description
TRUEevaluated 239169 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
FALSEevaluated 131706 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
|| nRowEst==0
nRowEst==0Description
TRUEevaluated 65859 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 65847 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
65847-239169
2706 nOrderBy = 0;-
2707 }
executed 305028 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
305028
2708 nOrderBy = pWInfo->pOrderBy->nExpr;-
2709 }
executed 65847 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
65847
2710-
2711-
2712 nSpace = (sizeof(WherePath)+sizeof(WhereLoop*)*nLoop)*mxChoice*2;-
2713 nSpace += sizeof(LogEst) * nOrderBy;-
2714 pSpace = sqlite3DbMallocRawNN(db, nSpace);-
2715 if( pSpace==0
pSpace==0Description
TRUEevaluated 51 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 370824 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 51 times by 1 test: return 7;
Executed by:
  • Self test (438)
7;
executed 51 times by 1 test: return 7;
Executed by:
  • Self test (438)
51-370824
2716 aTo = (WherePath*)pSpace;-
2717 aFrom = aTo+mxChoice;-
2718 memset(aFrom, 0, sizeof(aFrom[0]));-
2719 pX = (WhereLoop**)(aFrom+mxChoice);-
2720 for(ii=mxChoice*2, pFrom=aTo; ii>0
ii>0Description
TRUEevaluated 819434 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 370824 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii--, pFrom++, pX += nLoop){
370824-819434
2721 pFrom->aLoop = pX;-
2722 }
executed 819434 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
819434
2723 if( nOrderBy
nOrderByDescription
TRUEevaluated 65837 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 304987 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
65837-304987
2724-
2725-
2726-
2727-
2728-
2729-
2730 aSortCost = (LogEst*)pX;-
2731 memset(aSortCost, 0, sizeof(LogEst) * nOrderBy);-
2732 }
executed 65837 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
65837
2733 -
2734 ((void) (0))-
2735 ;-
2736 -
2737 ((void) (0))-
2738 ;-
2739-
2740-
2741-
2742-
2743-
2744-
2745 aFrom[0].nRow = ((
(pParse->nQueryLoop)<(48)Description
TRUEevaluated 328511 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 42313 times by 1 test
Evaluated by:
  • Self test (438)
pParse->nQueryLoop)<(48)
(pParse->nQueryLoop)<(48)Description
TRUEevaluated 328511 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 42313 times by 1 test
Evaluated by:
  • Self test (438)
?(pParse->nQueryLoop):(48));
42313-328511
2746 ((void) (0))-
2747 ;-
2748 nFrom = 1;-
2749 -
2750 ((void) (0))-
2751 ;-
2752 if( nOrderBy
nOrderByDescription
TRUEevaluated 65837 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 304987 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
65837-304987
2753-
2754-
2755-
2756-
2757-
2758-
2759 aFrom[0].isOrdered = nLoop>0
nLoop>0Description
TRUEevaluated 65742 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 95 times by 1 test
Evaluated by:
  • Self test (438)
? -1 : nOrderBy;
95-65742
2760 }
executed 65837 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
65837
2761-
2762-
2763-
2764-
2765 for(iLoop=0; iLoop<nLoop
iLoop<nLoopDescription
TRUEevaluated 319820 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 370824 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; iLoop++){
319820-370824
2766 nTo = 0;-
2767 for(ii=0, pFrom=aFrom; ii<nFrom
ii<nFromDescription
TRUEevaluated 367636 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 319820 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii++, pFrom++){
319820-367636
2768 for(pWLoop=pWInfo->pLoops; pWLoop
pWLoopDescription
TRUEevaluated 3185083 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 367636 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; pWLoop=pWLoop->pNextLoop){
367636-3185083
2769 LogEst nOut;-
2770 LogEst rCost;-
2771 LogEst rUnsorted;-
2772 i8 isOrdered = pFrom->isOrdered;-
2773 Bitmask maskNew;-
2774 Bitmask revMask = 0;-
2775-
2776 if( (
(pWLoop->prere...->maskLoop)!=0Description
TRUEevaluated 453799 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2731284 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWLoop->prereq & ~pFrom->maskLoop)!=0
(pWLoop->prere...->maskLoop)!=0Description
TRUEevaluated 453799 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2731284 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 453799 times by 1 test: continue;
Executed by:
  • Self test (438)
453799-2731284
2777 if( (
(pWLoop->maskS...->maskLoop)!=0Description
TRUEevaluated 1348923 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1382361 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWLoop->maskSelf & pFrom->maskLoop)!=0
(pWLoop->maskS...->maskLoop)!=0Description
TRUEevaluated 1348923 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1382361 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) continue;
executed 1348923 times by 1 test: continue;
Executed by:
  • Self test (438)
1348923-1382361
2778 if( (
(pWLoop->wsFla...0x00004000)!=0Description
TRUEevaluated 89642 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 1292719 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWLoop->wsFlags & 0x00004000)!=0
(pWLoop->wsFla...0x00004000)!=0Description
TRUEevaluated 89642 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 1292719 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& pFrom->nRow<3
pFrom->nRow<3Description
TRUEevaluated 57842 times by 33 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
FALSEevaluated 31800 times by 1 test
Evaluated by:
  • Self test (438)
){
31800-1292719
2779-
2780-
2781-
2782-
2783 -
2784 ((void) (0))-
2785 ;-
2786 continue;
executed 57842 times by 33 tests: continue;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (4)
  • Self test (42)
  • Self test (438)
  • Self test (44)
  • Self test (46)
  • Self test (47)
  • Self test (48)
  • Self test (5)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • ...
57842
2787 }-
2788-
2789-
2790-
2791 rUnsorted = sqlite3LogEstAdd(pWLoop->rSetup,pWLoop->rRun + pFrom->nRow);-
2792 rUnsorted = sqlite3LogEstAdd(rUnsorted, pFrom->rUnsorted);-
2793 nOut = pFrom->nRow + pWLoop->nOut;-
2794 maskNew = pFrom->maskLoop | pWLoop->maskSelf;-
2795 if( isOrdered<0
isOrdered<0Description
TRUEevaluated 77883 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 1246636 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
77883-1246636
2796 isOrdered = wherePathSatisfiesOrderBy(pWInfo,-
2797 pWInfo->pOrderBy, pFrom, pWInfo->wctrlFlags,-
2798 iLoop, pWLoop, &revMask);-
2799 }
executed 77883 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
77883
2800 revMask = pFrom->revLoop;-
2801 }
executed 1246636 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
1246636
2802 if( isOrdered>=0
isOrdered>=0Description
TRUEevaluated 1323722 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 797 times by 1 test
Evaluated by:
  • Self test (438)
&& isOrdered<nOrderBy
isOrdered<nOrderByDescription
TRUEevaluated 42189 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1281533 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
797-1323722
2803 if( aSortCost[isOrdered]==0
aSortCost[isOrdered]==0Description
TRUEevaluated 26175 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 16014 times by 1 test
Evaluated by:
  • Self test (438)
){
16014-26175
2804 aSortCost[isOrdered] = whereSortingCost(-
2805 pWInfo, nRowEst, nOrderBy, isOrdered-
2806 );-
2807 }
executed 26175 times by 1 test: end of block
Executed by:
  • Self test (438)
26175
2808-
2809-
2810-
2811-
2812 rCost = sqlite3LogEstAdd(rUnsorted, aSortCost[isOrdered]) + 5;-
2813-
2814 -
2815-
2816-
2817 ;-
2818 }
executed 42189 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
42189
2819 rCost = rUnsorted;-
2820 rUnsorted -= 2;-
2821 }
executed 1282330 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
1282330
2822 for(jj=0, pTo=aTo; jj<nTo
jj<nToDescription
TRUEevaluated 8971249 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1207734 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; jj++, pTo++){
1207734-8971249
2823 if( pTo->maskLoop==maskNew
pTo->maskLoop==maskNewDescription
TRUEevaluated 117223 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 8854026 times by 1 test
Evaluated by:
  • Self test (438)
117223-8854026
2824 && ((
((pTo->isOrder...ered)&0x80)==0Description
TRUEevaluated 116785 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 438 times by 1 test
Evaluated by:
  • Self test (438)
pTo->isOrdered^isOrdered)&0x80)==0
((pTo->isOrder...ered)&0x80)==0Description
TRUEevaluated 116785 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 438 times by 1 test
Evaluated by:
  • Self test (438)
438-116785
2825 ){-
2826 ;-
2827 break;
executed 116785 times by 1 test: break;
Executed by:
  • Self test (438)
116785
2828 }-
2829 }
executed 8854464 times by 1 test: end of block
Executed by:
  • Self test (438)
8854464
2830 if( jj>=nTo
jj>=nToDescription
TRUEevaluated 1207734 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 116785 times by 1 test
Evaluated by:
  • Self test (438)
){
116785-1207734
2831-
2832 if( nTo>=mxChoice
nTo>=mxChoiceDescription
TRUEevaluated 840088 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 367646 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
367646-840088
2833 && (rCost>mxCost
rCost>mxCostDescription
TRUEevaluated 29341 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 810747 times by 1 test
Evaluated by:
  • Self test (438)
|| (rCost==mxCost
rCost==mxCostDescription
TRUEevaluated 795122 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 15625 times by 1 test
Evaluated by:
  • Self test (438)
&& rUnsorted>=mxUnsorted
rUnsorted>=mxUnsortedDescription
TRUEevaluated 795121 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
))
1-810747
2834 ){-
2835 continue;
executed 824462 times by 1 test: continue;
Executed by:
  • Self test (438)
824462
2836 }-
2837-
2838-
2839 if( nTo<mxChoice
nTo<mxChoiceDescription
TRUEevaluated 367646 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 15626 times by 1 test
Evaluated by:
  • Self test (438)
){
15626-367646
2840-
2841 jj = nTo++;-
2842 }
executed 367646 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
367646
2843-
2844 jj = mxI;-
2845 }
executed 15626 times by 1 test: end of block
Executed by:
  • Self test (438)
15626
2846 pTo = &aTo[jj];-
2847-
2848-
2849-
2850-
2851-
2852-
2853-
2854 }
executed 383272 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
383272
2855 if( pTo->rCost<rCost
pTo->rCost<rCostDescription
TRUEevaluated 68219 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 48566 times by 1 test
Evaluated by:
  • Self test (438)
48566-68219
2856 || (pTo->rCost==rCost
pTo->rCost==rCostDescription
TRUEevaluated 27177 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 21389 times by 1 test
Evaluated by:
  • Self test (438)
21389-27177
2857 && (pTo->nRow<nOut
pTo->nRow<nOutDescription
TRUEevaluated 108 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27069 times by 1 test
Evaluated by:
  • Self test (438)
108-27069
2858 || (pTo->nRow==nOut
pTo->nRow==nOutDescription
TRUEevaluated 26974 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 95 times by 1 test
Evaluated by:
  • Self test (438)
&& pTo->rUnsorted<=rUnsorted
pTo->rUnsorted<=rUnsortedDescription
TRUEevaluated 26910 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 64 times by 1 test
Evaluated by:
  • Self test (438)
)
64-26974
2859 )-
2860 )-
2861 ){-
2862 ;-
2863 continue;
executed 95237 times by 1 test: continue;
Executed by:
  • Self test (438)
95237
2864 }-
2865 ;-
2866 }
executed 21548 times by 1 test: end of block
Executed by:
  • Self test (438)
21548
2867-
2868 pTo->maskLoop = pFrom->maskLoop | pWLoop->maskSelf;-
2869 pTo->revLoop = revMask;-
2870 pTo->nRow = nOut;-
2871 pTo->rCost = rCost;-
2872 pTo->rUnsorted = rUnsorted;-
2873 pTo->isOrdered = isOrdered;-
2874 memcpy(pTo->aLoop, pFrom->aLoop, sizeof(WhereLoop*)*iLoop);-
2875 pTo->aLoop[iLoop] = pWLoop;-
2876 if( nTo>=mxChoice
nTo>=mxChoiceDescription
TRUEevaluated 325792 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 79028 times by 1 test
Evaluated by:
  • Self test (438)
){
79028-325792
2877 mxI = 0;-
2878 mxCost = aTo[0].rCost;-
2879 mxUnsorted = aTo[0].nRow;-
2880 for(jj=1, pTo=&aTo[1]; jj<mxChoice
jj<mxChoiceDescription
TRUEevaluated 185922 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 325792 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; jj++, pTo++){
185922-325792
2881 if( pTo->rCost>mxCost
pTo->rCost>mxCostDescription
TRUEevaluated 19089 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 166833 times by 1 test
Evaluated by:
  • Self test (438)
19089-166833
2882 || (pTo->rCost==mxCost
pTo->rCost==mxCostDescription
TRUEevaluated 158735 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 8098 times by 1 test
Evaluated by:
  • Self test (438)
&& pTo->rUnsorted>mxUnsorted
pTo->rUnsorted>mxUnsortedDescription
TRUEevaluated 17319 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 141416 times by 1 test
Evaluated by:
  • Self test (438)
)
8098-158735
2883 ){-
2884 mxCost = pTo->rCost;-
2885 mxUnsorted = pTo->rUnsorted;-
2886 mxI = jj;-
2887 }
executed 36408 times by 1 test: end of block
Executed by:
  • Self test (438)
36408
2888 }
executed 185922 times by 1 test: end of block
Executed by:
  • Self test (438)
185922
2889 }
executed 325792 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
325792
2890 }
executed 404820 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
404820
2891 }
executed 367636 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
367636
2892 pFrom = aTo;-
2893 aTo = aFrom;-
2894 aFrom = pFrom;-
2895 nFrom = nTo;-
2896 }
executed 319820 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
319820
2897-
2898 if( nFrom==0
nFrom==0Description
TRUEevaluated 26 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 370798 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
26-370798
2899 sqlite3ErrorMsg(pParse, "no query solution");-
2900 sqlite3DbFreeNN(db, pSpace);-
2901 return
executed 26 times by 1 test: return 1;
Executed by:
  • Self test (438)
1;
executed 26 times by 1 test: return 1;
Executed by:
  • Self test (438)
26
2902 }-
2903-
2904-
2905 pFrom = aFrom;-
2906 for(ii=1; ii<nFrom
ii<nFromDescription
TRUEevaluated 36 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 370798 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii++){
36-370798
2907 if( pFrom->rCost>aFrom[ii].rCost
pFrom->rCost>aFrom[ii].rCostDescription
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 29 times by 1 test
Evaluated by:
  • Self test (438)
) pFrom = &aFrom[ii];
executed 7 times by 1 test: pFrom = &aFrom[ii];
Executed by:
  • Self test (438)
7-29
2908 }
executed 36 times by 1 test: end of block
Executed by:
  • Self test (438)
36
2909 -
2910 ((void) (0))-
2911 ;-
2912-
2913 for(iLoop=0; iLoop<nLoop
iLoop<nLoopDescription
TRUEevaluated 319790 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 370798 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; iLoop++){
319790-370798
2914 WhereLevel *pLevel = pWInfo->a + iLoop;-
2915 pLevel->pWLoop = pWLoop = pFrom->aLoop[iLoop];-
2916 pLevel->iFrom = pWLoop->iTab;-
2917 pLevel->iTabCur = pWInfo->pTabList->a[pLevel->iFrom].iCursor;-
2918 }
executed 319790 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
319790
2919 if( (
(pWInfo->wctrl...s & 0x0100)!=0Description
TRUEevaluated 497 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 370301 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->wctrlFlags & 0x0100)!=0
(pWInfo->wctrl...s & 0x0100)!=0Description
TRUEevaluated 497 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 370301 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
497-370301
2920 && (
(pWInfo->wctrl...s & 0x0080)==0Description
TRUEevaluated 125 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 372 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->wctrlFlags & 0x0080)==0
(pWInfo->wctrl...s & 0x0080)==0Description
TRUEevaluated 125 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 372 times by 1 test
Evaluated by:
  • Self test (438)
125-372
2921 && pWInfo->eDistinct==0
pWInfo->eDistinct==0Description
TRUEevaluated 98 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
27-98
2922 && nRowEst
nRowEstDescription
TRUEevaluated 49 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 49 times by 1 test
Evaluated by:
  • Self test (438)
49
2923 ){-
2924 Bitmask notUsed;-
2925 int rc = wherePathSatisfiesOrderBy(pWInfo, pWInfo->pResultSet, pFrom,-
2926 0x0080, nLoop-1, pFrom->aLoop[nLoop-1], &notUsed);-
2927 if( rc==pWInfo->pResultSet->nExpr
rc==pWInfo->pResultSet->nExprDescription
TRUEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 39 times by 1 test
Evaluated by:
  • Self test (438)
){
10-39
2928 pWInfo->eDistinct = 2;-
2929 }
executed 10 times by 1 test: end of block
Executed by:
  • Self test (438)
10
2930 }
executed 49 times by 1 test: end of block
Executed by:
  • Self test (438)
49
2931 pWInfo->bOrderedInnerLoop = 0;-
2932 if( pWInfo->pOrderBy
pWInfo->pOrderByDescription
TRUEevaluated 131674 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 239124 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
){
131674-239124
2933 if( pWInfo->wctrlFlags & 0x0080
pWInfo->wctrlFlags & 0x0080Description
TRUEevaluated 372 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 131302 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
372-131302
2934 if( pFrom->isOrdered==pWInfo->pOrderBy->nExpr
pFrom->isOrder...OrderBy->nExprDescription
TRUEevaluated 53 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 319 times by 1 test
Evaluated by:
  • Self test (438)
){
53-319
2935 pWInfo->eDistinct = 2;-
2936 }
executed 53 times by 1 test: end of block
Executed by:
  • Self test (438)
53
2937 }
executed 372 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
372
2938 pWInfo->nOBSat = pFrom->isOrdered;-
2939 pWInfo->revMask = pFrom->revLoop;-
2940 if( pWInfo->nOBSat<=0
pWInfo->nOBSat<=0Description
TRUEevaluated 85067 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 46235 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
46235-85067
2941 pWInfo->nOBSat = 0;-
2942 if( nLoop>0
nLoop>0Description
TRUEevaluated 84977 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 90 times by 1 test
Evaluated by:
  • Self test (438)
){
90-84977
2943 u32 wsFlags = pFrom->aLoop[nLoop-1]->wsFlags;-
2944 if( (
(wsFlags & 0x00001000)==0Description
TRUEevaluated 84856 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 121 times by 1 test
Evaluated by:
  • Self test (438)
wsFlags & 0x00001000)==0
(wsFlags & 0x00001000)==0Description
TRUEevaluated 84856 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 121 times by 1 test
Evaluated by:
  • Self test (438)
121-84856
2945 && (
(wsFlags&(0x00...00|0x00000004)Description
TRUEevaluated 84846 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
wsFlags&(0x00000100|0x00000004))!=(0x00000100|0x00000004)
(wsFlags&(0x00...00|0x00000004)Description
TRUEevaluated 84846 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
10-84846
2946 ){-
2947 Bitmask m = 0;-
2948 int rc = wherePathSatisfiesOrderBy(pWInfo, pWInfo->pOrderBy, pFrom,-
2949 0x0800, nLoop-1, pFrom->aLoop[nLoop-1], &m);-
2950 ;-
2951 ;-
2952 if( rc==pWInfo->pOrderBy->nExpr
rc==pWInfo->pOrderBy->nExprDescription
TRUEevaluated 43057 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 41789 times by 1 test
Evaluated by:
  • Self test (438)
){
41789-43057
2953 pWInfo->bOrderedInnerLoop = 1;-
2954 pWInfo->revMask = m;-
2955 }
executed 43057 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
43057
2956 }
executed 84846 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
84846
2957 }
executed 84977 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
84977
2958 }
executed 85067 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
85067
2959 }
executed 131302 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
131302
2960 if( (
(pWInfo->wctrlFlags & 0x0200)Description
TRUEevaluated 3750 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 127924 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo->wctrlFlags & 0x0200)
(pWInfo->wctrlFlags & 0x0200)Description
TRUEevaluated 3750 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 127924 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
3750-127924
2961 && pWInfo->nOBSat==pWInfo->pOrderBy->nExpr
pWInfo->nOBSat...OrderBy->nExprDescription
TRUEevaluated 23 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3727 times by 1 test
Evaluated by:
  • Self test (438)
&& nLoop>0
nLoop>0Description
TRUEevaluated 22 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
1-3727
2962 ){-
2963 Bitmask revMask = 0;-
2964 int nOrder = wherePathSatisfiesOrderBy(pWInfo, pWInfo->pOrderBy,-
2965 pFrom, 0, nLoop-1, pFrom->aLoop[nLoop-1], &revMask-
2966 );-
2967 -
2968 ((void) (0))-
2969 ;-
2970 if( nOrder==pWInfo->pOrderBy->nExpr
nOrder==pWInfo...OrderBy->nExprDescription
TRUEevaluated 18 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
){
4-18
2971 pWInfo->sorted = 1;-
2972 pWInfo->revMask = revMask;-
2973 }
executed 18 times by 1 test: end of block
Executed by:
  • Self test (438)
18
2974 }
executed 22 times by 1 test: end of block
Executed by:
  • Self test (438)
22
2975 }
executed 131674 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
131674
2976-
2977-
2978 pWInfo->nRowOut = pFrom->nRow;-
2979-
2980-
2981 sqlite3DbFreeNN(db, pSpace);-
2982 return
executed 370798 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
0;
executed 370798 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
370798
2983}-
2984static int whereShortCut(WhereLoopBuilder *pBuilder){-
2985 WhereInfo *pWInfo;-
2986 struct SrcList_item *pItem;-
2987 WhereClause *pWC;-
2988 WhereTerm *pTerm;-
2989 WhereLoop *pLoop;-
2990 int iCur;-
2991 int j;-
2992 Table *pTab;-
2993 Index *pIdx;-
2994-
2995 pWInfo = pBuilder->pWInfo;-
2996 if( pWInfo->wctrlFlags & 0x0020
pWInfo->wctrlFlags & 0x0020Description
TRUEevaluated 17787 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 243171 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 17787 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 17787 times by 1 test: return 0;
Executed by:
  • Self test (438)
17787-243171
2997 -
2998 ((void) (0))-
2999 ;-
3000 pItem = pWInfo->pTabList->a;-
3001 pTab = pItem->pTab;-
3002 if( ((
((pTab)->nModuleArg)Description
TRUEevaluated 9775 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 233396 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pTab)->nModuleArg)
((pTab)->nModuleArg)Description
TRUEevaluated 9775 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 233396 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 9775 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 9775 times by 1 test: return 0;
Executed by:
  • Self test (438)
9775-233396
3003 if( pItem->fg.isIndexedBy
pItem->fg.isIndexedByDescription
TRUEevaluated 109 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 233287 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) return
executed 109 times by 2 tests: return 0;
Executed by:
  • Self test (438)
  • Self test (47)
0;
executed 109 times by 2 tests: return 0;
Executed by:
  • Self test (438)
  • Self test (47)
109-233287
3004 iCur = pItem->iCursor;-
3005 pWC = &pWInfo->sWC;-
3006 pLoop = pBuilder->pNew;-
3007 pLoop->wsFlags = 0;-
3008 pLoop->nSkip = 0;-
3009 pTerm = sqlite3WhereFindTerm(pWC, iCur, -1, 0, 0x0002|0x0080, 0);-
3010 if( pTerm
pTermDescription
TRUEevaluated 26485 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 206802 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
26485-206802
3011 ;-
3012 pLoop->wsFlags = 0x00000001|0x00000100|0x00001000;-
3013 pLoop->aLTerm[0] = pTerm;-
3014 pLoop->nLTerm = 1;-
3015 pLoop->u.btree.nEq = 1;-
3016-
3017 pLoop->rRun = 33;-
3018 }
executed 26485 times by 30 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
else{
26485
3019 for(pIdx=pTab->pIndex; pIdx
pIdxDescription
TRUEevaluated 39509 times by 355 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • ...
FALSEevaluated 206189 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; pIdx=pIdx->pNext){
39509-206189
3020 int opMask;-
3021 -
3022 ((void) (0))-
3023 ;-
3024 if( !((pIdx)->onError!=0)
!((pIdx)->onError!=0)Description
TRUEevaluated 34214 times by 11 tests
Evaluated by:
  • Self test
  • Self test (2)
  • Self test (3)
  • Self test (35)
  • Self test (36)
  • Self test (438)
  • Self test (53)
  • Self test (57)
  • Self test (58)
  • Self test (86)
  • Self test (87)
FALSEevaluated 5295 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
5295-34214
3025 || pIdx->pPartIdxWhere!=0
pIdx->pPartIdxWhere!=0Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5288 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
7-5288
3026 || pIdx->nKeyCol>((int)(sizeof(pLoop->aLTermSpace)/sizeof(pLoop->aLTermSpace[0])))
pIdx->nKeyCol>...ermSpace[0])))Description
TRUEevaluated 55 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5233 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
55-5233
3027 ) continue;
executed 34276 times by 11 tests: continue;
Executed by:
  • Self test
  • Self test (2)
  • Self test (3)
  • Self test (35)
  • Self test (36)
  • Self test (438)
  • Self test (53)
  • Self test (57)
  • Self test (58)
  • Self test (86)
  • Self test (87)
34276
3028 opMask = pIdx->uniqNotNull
pIdx->uniqNotNullDescription
TRUEevaluated 1025 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4208 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
? (0x0002|0x0080) : 0x0002;
1025-4208
3029 for(j=0; j<pIdx->nKeyCol
j<pIdx->nKeyColDescription
TRUEevaluated 5313 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 613 times by 1 test
Evaluated by:
  • Self test (438)
; j++){
613-5313
3030 pTerm = sqlite3WhereFindTerm(pWC, iCur, j, 0, opMask, pIdx);-
3031 if( pTerm==0
pTerm==0Description
TRUEevaluated 4620 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 693 times by 1 test
Evaluated by:
  • Self test (438)
) break;
executed 4620 times by 347 tests: break;
Executed by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
693-4620
3032 ;-
3033 pLoop->aLTerm[j] = pTerm;-
3034 }
executed 693 times by 1 test: end of block
Executed by:
  • Self test (438)
693
3035 if( j!=pIdx->nKeyCol
j!=pIdx->nKeyColDescription
TRUEevaluated 4620 times by 347 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 613 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 4620 times by 347 tests: continue;
Executed by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
613-4620
3036 pLoop->wsFlags = 0x00000001|0x00001000|0x00000200;-
3037 if( pIdx->isCovering
pIdx->isCoveringDescription
TRUEevaluated 147 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 466 times by 1 test
Evaluated by:
  • Self test (438)
|| (
(pItem->colUse...olNotIdxed)==0Description
TRUEevaluated 177 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 289 times by 1 test
Evaluated by:
  • Self test (438)
pItem->colUsed & pIdx->colNotIdxed)==0
(pItem->colUse...olNotIdxed)==0Description
TRUEevaluated 177 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 289 times by 1 test
Evaluated by:
  • Self test (438)
){
147-466
3038 pLoop->wsFlags |= 0x00000040;-
3039 }
executed 324 times by 1 test: end of block
Executed by:
  • Self test (438)
324
3040 pLoop->nLTerm = j;-
3041 pLoop->u.btree.nEq = j;-
3042 pLoop->u.btree.pIndex = pIdx;-
3043-
3044 pLoop->rRun = 39;-
3045 break;
executed 613 times by 1 test: break;
Executed by:
  • Self test (438)
613
3046 }-
3047 }
executed 206802 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
206802
3048 if( pLoop->wsFlags
pLoop->wsFlagsDescription
TRUEevaluated 27098 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 206189 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
27098-206189
3049 pLoop->nOut = (LogEst)1;-
3050 pWInfo->a[0].pWLoop = pLoop;-
3051 -
3052 ((void) (0))-
3053 ;-
3054 pLoop->maskSelf = 1;-
3055 pWInfo->a[0].iTabCur = iCur;-
3056 pWInfo->nRowOut = 1;-
3057 if( pWInfo->pOrderBy
pWInfo->pOrderByDescription
TRUEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27083 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
) pWInfo->nOBSat = pWInfo->pOrderBy->nExpr;
executed 15 times by 1 test: pWInfo->nOBSat = pWInfo->pOrderBy->nExpr;
Executed by:
  • Self test (438)
15-27083
3058 if( pWInfo->wctrlFlags & 0x0100
pWInfo->wctrlFlags & 0x0100Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27096 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
){
2-27096
3059 pWInfo->eDistinct = 1;-
3060 }
executed 2 times by 1 test: end of block
Executed by:
  • Self test (438)
2
3061-
3062-
3063-
3064 return
executed 27098 times by 30 tests: return 1;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
1;
executed 27098 times by 30 tests: return 1;
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
27098
3065 }-
3066 return
executed 206189 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
0;
executed 206189 times by 435 tests: return 0;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
206189
3067}-
3068-
3069-
3070-
3071-
3072static int exprNodeIsDeterministic(Walker *pWalker, Expr *pExpr){-
3073 if( pExpr->op==157
pExpr->op==157Description
TRUEevaluated 233 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10732 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
&& (((
(((pExpr)->fla...80000))!=0)==0Description
TRUEevaluated 192 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41 times by 1 test
Evaluated by:
  • Self test (438)
pExpr)->flags&(0x080000))!=0)==0
(((pExpr)->fla...80000))!=0)==0Description
TRUEevaluated 192 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 41 times by 1 test
Evaluated by:
  • Self test (438)
){
41-10732
3074 pWalker->eCode = 0;-
3075 return
executed 192 times by 1 test: return 2;
Executed by:
  • Self test (438)
2;
executed 192 times by 1 test: return 2;
Executed by:
  • Self test (438)
192
3076 }-
3077 return
executed 10773 times by 4 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
0;
executed 10773 times by 4 tests: return 0;
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
10773
3078}-
3079-
3080-
3081-
3082-
3083-
3084-
3085static int exprIsDeterministic(Expr *p){-
3086 Walker w;-
3087 memset(&w, 0, sizeof(w));-
3088 w.eCode = 1;-
3089 w.xExprCallback = exprNodeIsDeterministic;-
3090 w.xSelectCallback = sqlite3SelectWalkFail;-
3091 sqlite3WalkExpr(&w, p);-
3092 return
executed 8064 times by 4 tests: return w.eCode;
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
w.eCode;
executed 8064 times by 4 tests: return w.eCode;
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
8064
3093}-
3094WhereInfo *sqlite3WhereBegin(-
3095 Parse *pParse,-
3096 SrcList *pTabList,-
3097 Expr *pWhere,-
3098 ExprList *pOrderBy,-
3099 ExprList *pResultSet,-
3100 u16 wctrlFlags,-
3101 int iAuxArg-
3102-
3103){-
3104 int nByteWInfo;-
3105 int nTabList;-
3106 WhereInfo *pWInfo;-
3107 Vdbe *v = pParse->pVdbe;-
3108 Bitmask notReady;-
3109 WhereLoopBuilder sWLB;-
3110 WhereMaskSet *pMaskSet;-
3111 WhereLevel *pLevel;-
3112 WhereLoop *pLoop;-
3113 int ii;-
3114 sqlite3 *db;-
3115 int rc;-
3116 u8 bFordelete = 0;-
3117-
3118 -
3119 ((void) (0))-
3120-
3121-
3122 -
3123 ;-
3124-
3125-
3126 -
3127 ((void) (0))-
3128 -
3129 ;-
3130-
3131-
3132 db = pParse->db;-
3133 memset(&sWLB, 0, sizeof(sWLB));-
3134-
3135-
3136 ;-
3137 if( pOrderBy
pOrderByDescription
TRUEevaluated 65807 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 267147 times by 412 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • ...
&& pOrderBy->nExpr>=((int)(sizeof(Bitmask)*8))
pOrderBy->nExp...f(Bitmask)*8))Description
TRUEnever evaluated
FALSEevaluated 65807 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) pOrderBy = 0;
never executed: pOrderBy = 0;
0-267147
3138 sWLB.pOrderBy = pOrderBy;-
3139-
3140-
3141-
3142 if( (((
(((db)->dbOptF...&(0x0010))!=0)Description
TRUEevaluated 86 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332868 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
db)->dbOptFlags&(0x0010))!=0)
(((db)->dbOptF...&(0x0010))!=0)Description
TRUEevaluated 86 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332868 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
86-332868
3143 wctrlFlags &= ~0x0100;-
3144 }
executed 86 times by 1 test: end of block
Executed by:
  • Self test (438)
86
3145-
3146-
3147-
3148-
3149 ;-
3150 if( pTabList->nSrc>((int)(sizeof(Bitmask)*8))
pTabList->nSrc...f(Bitmask)*8))Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332947 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
7-332947
3151 sqlite3ErrorMsg(pParse, "at most %d tables in a join", ((int)(sizeof(Bitmask)*8)));-
3152 return
executed 7 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 7 times by 1 test: return 0;
Executed by:
  • Self test (438)
7
3153 }-
3154-
3155-
3156-
3157-
3158-
3159-
3160 nTabList = (
(wctrlFlags & 0x0020)Description
TRUEevaluated 17787 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 315160 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
wctrlFlags & 0x0020)
(wctrlFlags & 0x0020)Description
TRUEevaluated 17787 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 315160 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
? 1 : pTabList->nSrc;
17787-315160
3161 nByteWInfo = (((sizeof(WhereInfo)+(nTabList-1)*sizeof(WhereLevel))+7)&~7);-
3162 pWInfo = sqlite3DbMallocRawNN(db, nByteWInfo + sizeof(WhereLoop));-
3163 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 432 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332515 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
432-332515
3164 sqlite3DbFree(db, pWInfo);-
3165 pWInfo = 0;-
3166 goto
executed 432 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 432 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
432
3167 }-
3168 pWInfo->pParse = pParse;-
3169 pWInfo->pTabList = pTabList;-
3170 pWInfo->pOrderBy = pOrderBy;-
3171 pWInfo->pWhere = pWhere;-
3172 pWInfo->pResultSet = pResultSet;-
3173 pWInfo->aiCurOnePass[0] = pWInfo->aiCurOnePass[1] = -1;-
3174 pWInfo->nLevel = nTabList;-
3175 pWInfo->iBreak = pWInfo->iContinue = sqlite3VdbeMakeLabel(v);-
3176 pWInfo->wctrlFlags = wctrlFlags;-
3177 pWInfo->iLimit = iAuxArg;-
3178 pWInfo->savedNQueryLoop = pParse->nQueryLoop;-
3179 memset(&pWInfo->nOBSat, 0,-
3180 -
3181 __builtin_offsetof (-
3182 WhereInfo-
3183 , -
3184 sWC-
3185 ) -
3186 - -
3187 __builtin_offsetof (-
3188 WhereInfo-
3189 , -
3190 nOBSat-
3191 )-
3192 );-
3193 memset(&pWInfo->a[0], 0, sizeof(WhereLoop)+nTabList*sizeof(WhereLevel));-
3194 -
3195 ((void) (0))-
3196 ;-
3197 pMaskSet = &pWInfo->sMaskSet;-
3198 sWLB.pWInfo = pWInfo;-
3199 sWLB.pWC = &pWInfo->sWC;-
3200 sWLB.pNew = (WhereLoop*)(((char*)pWInfo)+nByteWInfo);-
3201 -
3202 ((void) (0))-
3203 ;-
3204 whereLoopInit(sWLB.pNew);-
3205-
3206-
3207-
3208-
3209-
3210-
3211-
3212 (pMaskSet)->n=0;-
3213 sqlite3WhereClauseInit(&pWInfo->sWC, pWInfo);-
3214 sqlite3WhereSplit(&pWInfo->sWC, pWhere, 44);-
3215-
3216-
3217-
3218 if( nTabList==0
nTabList==0Description
TRUEevaluated 64640 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 267875 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
64640-267875
3219 if( pOrderBy
pOrderByDescription
TRUEevaluated 90 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 64550 times by 1 test
Evaluated by:
  • Self test (438)
) pWInfo->nOBSat = pOrderBy->nExpr;
executed 90 times by 1 test: pWInfo->nOBSat = pOrderBy->nExpr;
Executed by:
  • Self test (438)
90-64550
3220 if( wctrlFlags & 0x0100
wctrlFlags & 0x0100Description
TRUEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 64630 times by 1 test
Evaluated by:
  • Self test (438)
){
10-64630
3221 pWInfo->eDistinct = 1;-
3222 }
executed 10 times by 1 test: end of block
Executed by:
  • Self test (438)
10
3223 sqlite3VdbeExplain (pParse, 0, "SCAN CONSTANT ROW");-
3224 }
executed 64640 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
64640
3225 ii = 0;-
3226 do{-
3227 createMask(pMaskSet, pTabList->a[ii].iCursor);-
3228 sqlite3WhereTabFuncArgs(pParse, &pTabList->a[ii], &pWInfo->sWC);-
3229 }
executed 279537 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
while( (++
(++ii)<pTabList->nSrcDescription
TRUEevaluated 11662 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 267875 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
ii)<pTabList->nSrc
(++ii)<pTabList->nSrcDescription
TRUEevaluated 11662 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 267875 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
);
11662-279537
3230 }
executed 267875 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
267875
3231-
3232-
3233 sqlite3WhereExprAnalyze(pTabList, &pWInfo->sWC);-
3234 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 63 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332452 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) goto
executed 63 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 63 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
63-332452
3235 for(ii=0; ii<sWLB.pWC->nTerm
ii<sWLB.pWC->nTermDescription
TRUEevaluated 224468 times by 368 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
FALSEevaluated 332452 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii++){
224468-332452
3236 WhereTerm *pT = &sWLB.pWC->a[ii];-
3237 if( pT->wtFlags & 0x02
pT->wtFlags & 0x02Description
TRUEevaluated 21772 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 202696 times by 368 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
) continue;
executed 21772 times by 1 test: continue;
Executed by:
  • Self test (438)
21772-202696
3238 if( pT->prereqAll==0
pT->prereqAll==0Description
TRUEevaluated 8146 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
FALSEevaluated 194550 times by 368 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
&& (nTabList==0
nTabList==0Description
TRUEevaluated 82 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 8064 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
|| exprIsDeterministic(pT->pExpr)
exprIsDeterministic(pT->pExpr)Description
TRUEevaluated 6180 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
FALSEevaluated 1884 times by 1 test
Evaluated by:
  • Self test (438)
) ){
82-194550
3239 sqlite3ExprIfFalse(pParse, pT->pExpr, pWInfo->iBreak, 0x10);-
3240 pT->wtFlags |= 0x04;-
3241 }
executed 6262 times by 4 tests: end of block
Executed by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
6262
3242 }
executed 202696 times by 368 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • ...
202696
3243-
3244 if( wctrlFlags & 0x0100
wctrlFlags & 0x0100Description
TRUEevaluated 259 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332193 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
259-332193
3245 if( isDistinctRedundant(pParse, pTabList, &pWInfo->sWC, pResultSet)
isDistinctRedu...C, pResultSet)Description
TRUEevaluated 19 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 240 times by 1 test
Evaluated by:
  • Self test (438)
){
19-240
3246-
3247 pWInfo->eDistinct = 1;-
3248 }
executed 19 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( pOrderBy==0
pOrderBy==0Description
TRUEevaluated 186 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 54 times by 1 test
Evaluated by:
  • Self test (438)
){
19-186
3249-
3250 pWInfo->wctrlFlags |= 0x0080;-
3251 pWInfo->pOrderBy = pResultSet;-
3252 }
executed 186 times by 1 test: end of block
Executed by:
  • Self test (438)
186
3253 }
executed 259 times by 1 test: end of block
Executed by:
  • Self test (438)
259
3254 if( nTabList!=1
nTabList!=1Description
TRUEevaluated 71494 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 260958 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
|| whereShortCut(&sWLB)==0
whereShortCut(&sWLB)==0Description
TRUEevaluated 233860 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 27098 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
){
27098-260958
3255 rc = whereLoopAddAll(&sWLB);-
3256 if( rc
rcDescription
TRUEevaluated 327 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 305027 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) goto
executed 327 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 327 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
327-305027
3257 wherePathSolver(pWInfo, 0);-
3258 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 41 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 304986 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) goto
executed 41 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 41 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
41-304986
3259 if( pWInfo->pOrderBy
pWInfo->pOrderByDescription
TRUEevaluated 65848 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 239138 times by 401 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • ...
){
65848-239138
3260 wherePathSolver(pWInfo, pWInfo->nRowOut+1);-
3261 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 65838 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) goto
executed 10 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 10 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
10-65838
3262 }
executed 65838 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
65838
3263 }
executed 304976 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
304976
3264 if( pWInfo->pOrderBy==0
pWInfo->pOrderBy==0Description
TRUEevaluated 266221 times by 412 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • ...
FALSEevaluated 65853 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& (
(db->flags & 0x00001000)!=0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 266200 times by 412 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • ...
db->flags & 0x00001000)!=0
(db->flags & 0x00001000)!=0Description
TRUEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 266200 times by 412 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • ...
){
21-266221
3265 pWInfo->revMask = ((Bitmask)-1);-
3266 }
executed 21 times by 1 test: end of block
Executed by:
  • Self test (438)
21
3267 if( pParse->nErr
pParse->nErrDescription
TRUEevaluated 66 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332008 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
|| (
(db->mallocFailed)Description
TRUEnever evaluated
FALSEevaluated 332008 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
db->mallocFailed)
(db->mallocFailed)Description
TRUEnever evaluated
FALSEevaluated 332008 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
0-332008
3268 goto
executed 66 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 66 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
66
3269 }-
3270 notReady = ~(Bitmask)0;-
3271 if( pWInfo->nLevel>=2
pWInfo->nLevel>=2Description
TRUEevaluated 6546 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 325462 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
6546-325462
3272 && pResultSet!=0
pResultSet!=0Description
TRUEevaluated 6429 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 117 times by 1 test
Evaluated by:
  • Self test (438)
117-6429
3273 && (((
(((db)->dbOptF...&(0x0100))==0)Description
TRUEevaluated 6424 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
db)->dbOptFlags&(0x0100))==0)
(((db)->dbOptF...&(0x0100))==0)Description
TRUEevaluated 6424 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
5-6424
3274 ){-
3275 int i;-
3276 Bitmask tabUsed = sqlite3WhereExprListUsage(pMaskSet, pResultSet);-
3277 if( sWLB.pOrderBy
sWLB.pOrderByDescription
TRUEevaluated 2279 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4145 times by 1 test
Evaluated by:
  • Self test (438)
){
2279-4145
3278 tabUsed |= sqlite3WhereExprListUsage(pMaskSet, sWLB.pOrderBy);-
3279 }
executed 2279 times by 1 test: end of block
Executed by:
  • Self test (438)
2279
3280 for(i=pWInfo->nLevel-1; i>=1
i>=1Description
TRUEevaluated 10964 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 6424 times by 1 test
Evaluated by:
  • Self test (438)
; i--){
6424-10964
3281 WhereTerm *pTerm, *pEnd;-
3282 struct SrcList_item *pItem;-
3283 pLoop = pWInfo->a[i].pWLoop;-
3284 pItem = &pWInfo->pTabList->a[pLoop->iTab];-
3285 if( (
(pItem->fg.joi...e & 0x0008)==0Description
TRUEevaluated 10549 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 415 times by 1 test
Evaluated by:
  • Self test (438)
pItem->fg.jointype & 0x0008)==0
(pItem->fg.joi...e & 0x0008)==0Description
TRUEevaluated 10549 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 415 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 10549 times by 1 test: continue;
Executed by:
  • Self test (438)
415-10549
3286 if( (
(wctrlFlags & 0x0100)==0Description
TRUEevaluated 401 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & 0x0100)==0
(wctrlFlags & 0x0100)==0Description
TRUEevaluated 401 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
14-401
3287 && (
(pLoop->wsFlag...0x00001000)==0Description
TRUEevaluated 292 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 109 times by 1 test
Evaluated by:
  • Self test (438)
pLoop->wsFlags & 0x00001000)==0
(pLoop->wsFlag...0x00001000)==0Description
TRUEevaluated 292 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 109 times by 1 test
Evaluated by:
  • Self test (438)
109-292
3288 ){-
3289 continue;
executed 292 times by 1 test: continue;
Executed by:
  • Self test (438)
292
3290 }-
3291 if( (
(tabUsed & pLoop->maskSelf)!=0Description
TRUEevaluated 96 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
tabUsed & pLoop->maskSelf)!=0
(tabUsed & pLoop->maskSelf)!=0Description
TRUEevaluated 96 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 96 times by 1 test: continue;
Executed by:
  • Self test (438)
27-96
3292 pEnd = sWLB.pWC->a + sWLB.pWC->nTerm;-
3293 for(pTerm=sWLB.pWC->a; pTerm<pEnd
pTerm<pEndDescription
TRUEevaluated 70 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
; pTerm++){
21-70
3294 if( (
(pTerm->prereq...->maskSelf)!=0Description
TRUEevaluated 54 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->prereqAll & pLoop->maskSelf)!=0
(pTerm->prereq...->maskSelf)!=0Description
TRUEevaluated 54 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
){
16-54
3295 if( !(((pTerm->pExpr)->flags&(0x000001))!=0)
!(((pTerm->pEx...0x000001))!=0)Description
TRUEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 52 times by 1 test
Evaluated by:
  • Self test (438)
2-52
3296 || pTerm->pExpr->iRightJoinTable!=pItem->iCursor
pTerm->pExpr->...pItem->iCursorDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 48 times by 1 test
Evaluated by:
  • Self test (438)
4-48
3297 ){-
3298 break;
executed 6 times by 1 test: break;
Executed by:
  • Self test (438)
6
3299 }-
3300 }
executed 48 times by 1 test: end of block
Executed by:
  • Self test (438)
48
3301 }
executed 64 times by 1 test: end of block
Executed by:
  • Self test (438)
64
3302 if( pTerm<pEnd
pTerm<pEndDescription
TRUEevaluated 6 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
) continue;
executed 6 times by 1 test: continue;
Executed by:
  • Self test (438)
6-21
3303 ;-
3304 notReady &= ~pLoop->maskSelf;-
3305 for(pTerm=sWLB.pWC->a; pTerm<pEnd
pTerm<pEndDescription
TRUEevaluated 60 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
; pTerm++){
21-60
3306 if( (
(pTerm->prereq...->maskSelf)!=0Description
TRUEevaluated 44 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
pTerm->prereqAll & pLoop->maskSelf)!=0
(pTerm->prereq...->maskSelf)!=0Description
TRUEevaluated 44 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 16 times by 1 test
Evaluated by:
  • Self test (438)
){
16-44
3307 pTerm->wtFlags |= 0x04;-
3308 }
executed 44 times by 1 test: end of block
Executed by:
  • Self test (438)
44
3309 }
executed 60 times by 1 test: end of block
Executed by:
  • Self test (438)
60
3310 if( i!=pWInfo->nLevel-1
i!=pWInfo->nLevel-1Description
TRUEevaluated 8 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
){
8-13
3311 int nByte = (pWInfo->nLevel-1-i) * sizeof(WhereLevel);-
3312 memmove(&pWInfo->a[i], &pWInfo->a[i+1], nByte);-
3313 }
executed 8 times by 1 test: end of block
Executed by:
  • Self test (438)
8
3314 pWInfo->nLevel--;-
3315 nTabList--;-
3316 }
executed 21 times by 1 test: end of block
Executed by:
  • Self test (438)
21
3317 }
executed 6424 times by 1 test: end of block
Executed by:
  • Self test (438)
6424
3318 ;-
3319 pWInfo->pParse->nQueryLoop += pWInfo->nRowOut;-
3320 -
3321 ((void) (0))-
3322 ;-
3323 if( (
(wctrlFlags & 0x0004)!=0Description
TRUEevaluated 40356 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
FALSEevaluated 291652 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
wctrlFlags & 0x0004)!=0
(wctrlFlags & 0x0004)!=0Description
TRUEevaluated 40356 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
FALSEevaluated 291652 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
40356-291652
3324 int wsFlags = pWInfo->a[0].pWLoop->wsFlags;-
3325 int bOnerow = (wsFlags & 0x00001000)!=0;-
3326 if( bOnerow
bOnerowDescription
TRUEevaluated 24477 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 15879 times by 354 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
|| (
15879-24477
3327 0!=(wctrlFlags & 0x0008)
0!=(wctrlFlags & 0x0008)Description
TRUEevaluated 7823 times by 354 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 8056 times by 4 tests
Evaluated by:
  • Self test (24)
  • Self test (28)
  • Self test (438)
  • Self test (47)
7823-8056
3328 && 0==(wsFlags & 0x00000400)
0==(wsFlags & 0x00000400)Description
TRUEevaluated 7802 times by 354 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 21 times by 1 test
Evaluated by:
  • Self test (438)
21-7802
3329 && (0==(wsFlags & 0x00002000)
0==(wsFlags & 0x00002000)Description
TRUEevaluated 7787 times by 354 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
FALSEevaluated 15 times by 1 test
Evaluated by:
  • Self test (438)
|| (
(wctrlFlags & 0x0010)Description
TRUEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & 0x0010)
(wctrlFlags & 0x0010)Description
TRUEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
)
1-7787
3330 )){-
3331 pWInfo->eOnePass = bOnerow
bOnerowDescription
TRUEevaluated 24477 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
FALSEevaluated 7801 times by 354 tests
Evaluated by:
  • Self test (10)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • Self test (125)
  • Self test (126)
  • Self test (127)
  • Self test (128)
  • ...
? 1 : 2;
7801-24477
3332 if( (((
(((pTabList->a... & 0x0020)==0)Description
TRUEevaluated 32086 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
FALSEevaluated 192 times by 1 test
Evaluated by:
  • Self test (438)
pTabList->a[0].pTab)->tabFlags & 0x0020)==0)
(((pTabList->a... & 0x0020)==0)Description
TRUEevaluated 32086 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
FALSEevaluated 192 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(wsFlags & 0x00000040)Description
TRUEevaluated 325 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 31761 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
wsFlags & 0x00000040)
(wsFlags & 0x00000040)Description
TRUEevaluated 325 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 31761 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
){
192-32086
3333 if( wctrlFlags & 0x0008
wctrlFlags & 0x0008Description
TRUEevaluated 229 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 96 times by 1 test
Evaluated by:
  • Self test (438)
){
96-229
3334 bFordelete = 0x08;-
3335 }
executed 229 times by 1 test: end of block
Executed by:
  • Self test (438)
229
3336 pWInfo->a[0].pWLoop->wsFlags = (wsFlags & ~0x00000040);-
3337 }
executed 325 times by 1 test: end of block
Executed by:
  • Self test (438)
325
3338 }
executed 32278 times by 378 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
32278
3339 }
executed 40356 times by 378 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
40356
3340-
3341-
3342-
3343-
3344 for(ii=0, pLevel=pWInfo->a; ii<nTabList
ii<nTabListDescription
TRUEevaluated 278504 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332008 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii++, pLevel++){
278504-332008
3345 Table *pTab;-
3346 int iDb;-
3347 struct SrcList_item *pTabItem;-
3348-
3349 pTabItem = &pTabList->a[pLevel->iFrom];-
3350 pTab = pTabItem->pTab;-
3351 iDb = sqlite3SchemaToIndex(db, pTab->pSchema);-
3352 pLoop = pLevel->pWLoop;-
3353 if( (
(pTab->tabFlags & 0x0002)!=0Description
TRUEevaluated 2946 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 275558 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pTab->tabFlags & 0x0002)!=0
(pTab->tabFlags & 0x0002)!=0Description
TRUEevaluated 2946 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 275558 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
|| pTab->pSelect
pTab->pSelectDescription
TRUEevaluated 33565 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 241993 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
2946-275558
3354-
3355 }
executed 36511 times by 1 test: end of block
Executed by:
  • Self test (438)
else
36511
3356-
3357 if( (
(pLoop->wsFlag...0x00000400)!=0Description
TRUEevaluated 11058 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 230935 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pLoop->wsFlags & 0x00000400)!=0
(pLoop->wsFlag...0x00000400)!=0Description
TRUEevaluated 11058 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 230935 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
11058-230935
3358 const char *pVTab = (const char *)sqlite3GetVTable(db, pTab);-
3359 int iCur = pTabItem->iCursor;-
3360 sqlite3VdbeAddOp4(v, 164, iCur, 0, 0, pVTab, (-12));-
3361 }
executed 11058 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( ((
((pTab)->nModuleArg)Description
TRUEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 230921 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pTab)->nModuleArg)
((pTab)->nModuleArg)Description
TRUEevaluated 14 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 230921 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
14-230921
3362-
3363 }
executed 14 times by 1 test: end of block
Executed by:
  • Self test (438)
else
14
3364-
3365 if( (
(pLoop->wsFlag...0x00000040)==0Description
TRUEevaluated 222754 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 8167 times by 1 test
Evaluated by:
  • Self test (438)
pLoop->wsFlags & 0x00000040)==0
(pLoop->wsFlag...0x00000040)==0Description
TRUEevaluated 222754 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 8167 times by 1 test
Evaluated by:
  • Self test (438)
8167-222754
3366 && (
(wctrlFlags & 0x0020)==0Description
TRUEevaluated 206192 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 16562 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & 0x0020)==0
(wctrlFlags & 0x0020)==0Description
TRUEevaluated 206192 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 16562 times by 1 test
Evaluated by:
  • Self test (438)
){
16562-206192
3367 int op = 109;-
3368 if( pWInfo->eOnePass!=0
pWInfo->eOnePass!=0Description
TRUEevaluated 32078 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
FALSEevaluated 174114 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
32078-174114
3369 op = 110;-
3370 pWInfo->aiCurOnePass[0] = pTabItem->iCursor;-
3371 }
executed 32078 times by 378 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
;
32078
3372 sqlite3OpenTable(pParse, pTabItem->iCursor, iDb, pTab, op);-
3373 -
3374 ((void) (0))-
3375 ;-
3376 ;-
3377 ;-
3378 if( pWInfo->eOnePass==0
pWInfo->eOnePass==0Description
TRUEevaluated 174114 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 32078 times by 378 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • Self test (122)
  • Self test (123)
  • Self test (124)
  • ...
&& pTab->nCol<((int)(sizeof(Bitmask)*8))
pTab->nCol<((i...f(Bitmask)*8))Description
TRUEevaluated 174028 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 86 times by 1 test
Evaluated by:
  • Self test (438)
&& (((
(((pTab)->tabF... & 0x0020)==0)Description
TRUEevaluated 173998 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 30 times by 1 test
Evaluated by:
  • Self test (438)
pTab)->tabFlags & 0x0020)==0)
(((pTab)->tabF... & 0x0020)==0)Description
TRUEevaluated 173998 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 30 times by 1 test
Evaluated by:
  • Self test (438)
){
30-174114
3379 Bitmask b = pTabItem->colUsed;-
3380 int n = 0;-
3381 for(; b
bDescription
TRUEevaluated 515437 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 173998 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; b=b>>1, n++){}
executed 515437 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
173998-515437
3382 sqlite3VdbeChangeP4(v, -1, ((void*)(long int)(n)), (-3));-
3383 -
3384 ((void) (0))-
3385 ;-
3386 }
executed 173998 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
173998
3387-
3388-
3389-
3390-
3391-
3392 {-
3393 sqlite3VdbeChangeP5(v, bFordelete);-
3394 }-
3395-
3396-
3397-
3398-
3399 }
executed 206192 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
206192
3400 sqlite3TableLock(pParse, iDb, pTab->tnum, 0, pTab->zName);-
3401 }
executed 24729 times by 1 test: end of block
Executed by:
  • Self test (438)
24729
3402 if( pLoop->wsFlags & 0x00000200
pLoop->wsFlags & 0x00000200Description
TRUEevaluated 28422 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 250082 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
28422-250082
3403 Index *pIx = pLoop->u.btree.pIndex;-
3404 int iIndexCur;-
3405 int op = 109;-
3406-
3407 -
3408 ((void) (0))-
3409 ;-
3410 if( !(((pTab)->tabFlags & 0x0020)==0)
!(((pTab)->tab... & 0x0020)==0)Description
TRUEevaluated 990 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27432 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
&& ((
((pIx)->idxType==2)Description
TRUEevaluated 842 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 148 times by 1 test
Evaluated by:
  • Self test (438)
pIx)->idxType==2)
((pIx)->idxType==2)Description
TRUEevaluated 842 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 148 times by 1 test
Evaluated by:
  • Self test (438)
148-27432
3411 && (
(wctrlFlags & 0x0020)!=0Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 835 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags & 0x0020)!=0
(wctrlFlags & 0x0020)!=0Description
TRUEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 835 times by 1 test
Evaluated by:
  • Self test (438)
7-835
3412 ){-
3413-
3414-
3415 iIndexCur = pLevel->iTabCur;-
3416 op = 0;-
3417 }
executed 7 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( pWInfo->eOnePass!=0
pWInfo->eOnePass!=0Description
TRUEevaluated 535 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 27880 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
7-27880
3418 Index *pJ = pTabItem->pTab->pIndex;-
3419 iIndexCur = iAuxArg;-
3420 -
3421 ((void) (0))-
3422 ;-
3423 while( (
(pJ)Description
TRUEevaluated 603 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
pJ)
(pJ)Description
TRUEevaluated 603 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
&& pJ!=pIx
pJ!=pIxDescription
TRUEevaluated 68 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 535 times by 1 test
Evaluated by:
  • Self test (438)
){
0-603
3424 iIndexCur++;-
3425 pJ = pJ->pNext;-
3426 }
executed 68 times by 1 test: end of block
Executed by:
  • Self test (438)
68
3427 op = 110;-
3428 pWInfo->aiCurOnePass[1] = iIndexCur;-
3429 }
executed 535 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( iAuxArg
iAuxArgDescription
TRUEevaluated 27258 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 622 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(wctrlFlags & 0x0020)!=0Description
TRUEevaluated 13313 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13945 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
wctrlFlags & 0x0020)!=0
(wctrlFlags & 0x0020)!=0Description
TRUEevaluated 13313 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 13945 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
535-27258
3430 iIndexCur = iAuxArg;-
3431 op = 108;-
3432 }
executed 13313 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
13313
3433 iIndexCur = pParse->nTab++;-
3434 }
executed 14567 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
14567
3435 pLevel->iIdxCur = iIndexCur;-
3436 -
3437 ((void) (0))-
3438 ;-
3439 -
3440 ((void) (0))-
3441 ;-
3442 if( op
opDescription
TRUEevaluated 28415 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 7 times by 1 test
Evaluated by:
  • Self test (438)
){
7-28415
3443 sqlite3VdbeAddOp3(v, op, iIndexCur, pIx->tnum, iDb);-
3444 sqlite3VdbeSetP4KeyInfo(pParse, pIx);-
3445 if( (
(pLoop->wsFlag...0x0000000f)!=0Description
TRUEevaluated 23649 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4766 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
pLoop->wsFlags & 0x0000000f)!=0
(pLoop->wsFlag...0x0000000f)!=0Description
TRUEevaluated 23649 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 4766 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
4766-23649
3446 && (
(pLoop->wsFlag...x00008000))==0Description
TRUEevaluated 15809 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7840 times by 1 test
Evaluated by:
  • Self test (438)
pLoop->wsFlags & (0x00000002|0x00008000))==0
(pLoop->wsFlag...x00008000))==0Description
TRUEevaluated 15809 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 7840 times by 1 test
Evaluated by:
  • Self test (438)
7840-15809
3447 && (
(pWInfo->wctrlFlags&0x0001)==0Description
TRUEevaluated 15789 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20 times by 1 test
Evaluated by:
  • Self test (438)
pWInfo->wctrlFlags&0x0001)==0
(pWInfo->wctrlFlags&0x0001)==0Description
TRUEevaluated 15789 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 20 times by 1 test
Evaluated by:
  • Self test (438)
20-15789
3448 && pWInfo->eDistinct!=2
pWInfo->eDistinct!=2Description
TRUEevaluated 15778 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 11 times by 1 test
Evaluated by:
  • Self test (438)
11-15778
3449 ){-
3450 sqlite3VdbeChangeP5(v, 0x02);-
3451 }
executed 15778 times by 1 test: end of block
Executed by:
  • Self test (438)
15778
3452 ;-
3453 }
executed 28415 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
28415
3454 }
executed 28422 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
28422
3455 if( iDb>=0
iDb>=0Description
TRUEevaluated 275558 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 2946 times by 1 test
Evaluated by:
  • Self test (438)
) sqlite3CodeVerifySchema(pParse, iDb);
executed 275558 times by 435 tests: sqlite3CodeVerifySchema(pParse, iDb);
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
2946-275558
3456 }
executed 278504 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
278504
3457 pWInfo->iTop = sqlite3VdbeCurrentAddr(v);-
3458 if( db->mallocFailed
db->mallocFailedDescription
TRUEevaluated 4 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 332004 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) goto
executed 4 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
whereBeginError;
executed 4 times by 1 test: goto whereBeginError;
Executed by:
  • Self test (438)
4-332004
3459-
3460-
3461-
3462-
3463-
3464 for(ii=0; ii<nTabList
ii<nTabListDescription
TRUEevaluated 278496 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332004 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; ii++){
278496-332004
3465 int addrExplain;-
3466 int wsFlags;-
3467 pLevel = &pWInfo->a[ii];-
3468 wsFlags = pLevel->pWLoop->wsFlags;-
3469-
3470 if( (
(pLevel->pWLoo...0x00004000)!=0Description
TRUEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 275637 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pLevel->pWLoop->wsFlags & 0x00004000)!=0
(pLevel->pWLoo...0x00004000)!=0Description
TRUEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 275637 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
2859-275637
3471 constructAutomaticIndex(pParse, &pWInfo->sWC,-
3472 &pTabList->a[pLevel->iFrom], notReady, pLevel);-
3473 if( db->mallocFailed
db->mallocFailedDescription
TRUEnever evaluated
FALSEevaluated 2859 times by 1 test
Evaluated by:
  • Self test (438)
) goto
never executed: goto whereBeginError;
whereBeginError;
never executed: goto whereBeginError;
0-2859
3474 }
executed 2859 times by 1 test: end of block
Executed by:
  • Self test (438)
2859
3475-
3476 addrExplain = sqlite3WhereExplainOneScan(-
3477 pParse, pTabList, pLevel, wctrlFlags-
3478 );-
3479 pLevel->addrBody = sqlite3VdbeCurrentAddr(v);-
3480 notReady = sqlite3WhereCodeOneLoopStart(pWInfo, ii, notReady);-
3481 pWInfo->iContinue = pLevel->addrCont;-
3482 if( (
(wsFlags&0x00002000)==0Description
TRUEevaluated 276130 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 2366 times by 1 test
Evaluated by:
  • Self test (438)
wsFlags&0x00002000)==0
(wsFlags&0x00002000)==0Description
TRUEevaluated 276130 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 2366 times by 1 test
Evaluated by:
  • Self test (438)
&& (
(wctrlFlags&0x0020)==0Description
TRUEevaluated 258344 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 17786 times by 1 test
Evaluated by:
  • Self test (438)
wctrlFlags&0x0020)==0
(wctrlFlags&0x0020)==0Description
TRUEevaluated 258344 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 17786 times by 1 test
Evaluated by:
  • Self test (438)
){
2366-276130
3483 ((void)addrExplain);-
3484 }
executed 258344 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
258344
3485 }
executed 278496 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
278496
3486-
3487-
3488 ;-
3489 return
executed 332004 times by 435 tests: return pWInfo;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
pWInfo;
executed 332004 times by 435 tests: return pWInfo;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
332004
3490-
3491-
3492whereBeginError:-
3493 if( pWInfo
pWInfoDescription
TRUEevaluated 511 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 432 times by 1 test
Evaluated by:
  • Self test (438)
){
432-511
3494 pParse->nQueryLoop = pWInfo->savedNQueryLoop;-
3495 whereInfoFree(db, pWInfo);-
3496 }
executed 511 times by 1 test: end of block
Executed by:
  • Self test (438)
511
3497 return
executed 943 times by 1 test: return 0;
Executed by:
  • Self test (438)
0;
executed 943 times by 1 test: return 0;
Executed by:
  • Self test (438)
943
3498}-
3499void sqlite3WhereEnd(WhereInfo *pWInfo){-
3500 Parse *pParse = pWInfo->pParse;-
3501 Vdbe *v = pParse->pVdbe;-
3502 int i;-
3503 WhereLevel *pLevel;-
3504 WhereLoop *pLoop;-
3505 SrcList *pTabList = pWInfo->pTabList;-
3506 sqlite3 *db = pParse->db;-
3507-
3508-
3509-
3510 ;-
3511 for(i=pWInfo->nLevel-1; i>=0
i>=0Description
TRUEevaluated 278496 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332004 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i--){
278496-332004
3512 int addr;-
3513 pLevel = &pWInfo->a[i];-
3514 pLoop = pLevel->pWLoop;-
3515 if( pLevel->op!=171
pLevel->op!=171Description
TRUEevaluated 247105 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 31391 times by 30 tests
Evaluated by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
){
31391-247105
3516-
3517 int addrSeek = 0;-
3518 Index *pIdx;-
3519 int n;-
3520 if( pWInfo->eDistinct==2
pWInfo->eDistinct==2Description
TRUEevaluated 71 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 247034 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
71-247034
3521 && i==pWInfo->nLevel-1
i==pWInfo->nLevel-1Description
TRUEevaluated 53 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 18 times by 1 test
Evaluated by:
  • Self test (438)
18-53
3522 && (
(pLoop->wsFlag...0x00000200)!=0Description
TRUEevaluated 48 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
pLoop->wsFlags & 0x00000200)!=0
(pLoop->wsFlag...0x00000200)!=0Description
TRUEevaluated 48 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
5-48
3523 && (
(pIdx = pLoop-...dex)->hasStat1Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 43 times by 1 test
Evaluated by:
  • Self test (438)
pIdx = pLoop->u.btree.pIndex)->hasStat1
(pIdx = pLoop-...dex)->hasStat1Description
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 43 times by 1 test
Evaluated by:
  • Self test (438)
5-43
3524 && (
(n = pLoop->u.btree.nIdxCol)>0Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
n = pLoop->u.btree.nIdxCol)>0
(n = pLoop->u.btree.nIdxCol)>0Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 2 times by 1 test
Evaluated by:
  • Self test (438)
2-3
3525 && pIdx->aiRowLogEst[n]>=36
pIdx->aiRowLogEst[n]>=36Description
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
0-3
3526 ){-
3527 int r1 = pParse->nMem+1;-
3528 int j, op;-
3529 for(j=0; j<n
j<nDescription
TRUEevaluated 5 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
; j++){
3-5
3530 sqlite3VdbeAddOp3(v, 90, pLevel->iIdxCur, j, r1+j);-
3531 }
executed 5 times by 1 test: end of block
Executed by:
  • Self test (438)
5
3532 pParse->nMem += n+1;-
3533 op = pLevel->op==4
pLevel->op==4Description
TRUEnever evaluated
FALSEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
? 22 : 25;
0-3
3534 addrSeek = sqlite3VdbeAddOp4Int(v, op, pLevel->iIdxCur, 0, r1, n);-
3535 ;-
3536 ;-
3537 sqlite3VdbeAddOp2(v, 11, 1, pLevel->p2);-
3538 }
executed 3 times by 1 test: end of block
Executed by:
  • Self test (438)
3
3539-
3540-
3541 sqlite3VdbeResolveLabel(v, pLevel->addrCont);-
3542 sqlite3VdbeAddOp3(v, pLevel->op, pLevel->p1, pLevel->p2, pLevel->p3);-
3543 sqlite3VdbeChangeP5(v, pLevel->p5);-
3544 ;-
3545 ;-
3546 ;-
3547 ;-
3548-
3549 if( addrSeek
addrSeekDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 247102 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
) sqlite3VdbeJumpHere(v, addrSeek);
executed 3 times by 1 test: sqlite3VdbeJumpHere(v, addrSeek);
Executed by:
  • Self test (438)
3-247102
3550-
3551 }
executed 247105 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
else{
247105
3552 sqlite3VdbeResolveLabel(v, pLevel->addrCont);-
3553 }
executed 31391 times by 30 tests: end of block
Executed by:
  • Self test
  • Self test (100)
  • Self test (101)
  • Self test (104)
  • Self test (24)
  • Self test (26)
  • Self test (27)
  • Self test (28)
  • Self test (29)
  • Self test (30)
  • Self test (32)
  • Self test (33)
  • Self test (34)
  • Self test (39)
  • Self test (438)
  • Self test (47)
  • Self test (48)
  • Self test (57)
  • Self test (58)
  • Self test (72)
  • Self test (73)
  • Self test (91)
  • Self test (92)
  • Self test (93)
  • Self test (94)
  • ...
31391
3554 if( pLoop->wsFlags & 0x00000800
pLoop->wsFlags & 0x00000800Description
TRUEevaluated 679 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 277817 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
&& pLevel->u.in.nIn>0
pLevel->u.in.nIn>0Description
TRUEevaluated 679 times by 1 test
Evaluated by:
  • Self test (438)
FALSEnever evaluated
){
0-277817
3555 struct InLoop *pIn;-
3556 int j;-
3557 sqlite3VdbeResolveLabel(v, pLevel->addrNxt);-
3558 for(j=pLevel->u.in.nIn, pIn=&pLevel->u.in.aInLoop[j-1]; j>0
j>0Description
TRUEevaluated 813 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 679 times by 1 test
Evaluated by:
  • Self test (438)
; j--, pIn--){
679-813
3559 sqlite3VdbeJumpHere(v, pIn->addrInTop+1);-
3560 if( pIn->eEndLoopOp!=171
pIn->eEndLoopOp!=171Description
TRUEevaluated 775 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 38 times by 1 test
Evaluated by:
  • Self test (438)
){
38-775
3561 if( pIn->nPrefix
pIn->nPrefixDescription
TRUEevaluated 255 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 520 times by 1 test
Evaluated by:
  • Self test (438)
){
255-520
3562 -
3563 ((void) (0))-
3564 ;-
3565 sqlite3VdbeAddOp4Int(v, 26, pLevel->iIdxCur,-
3566 sqlite3VdbeCurrentAddr(v)+2,-
3567 pIn->iBase, pIn->nPrefix);-
3568 ;-
3569 }
executed 255 times by 1 test: end of block
Executed by:
  • Self test (438)
255
3570 sqlite3VdbeAddOp2(v, pIn->eEndLoopOp, pIn->iCur, pIn->addrInTop);-
3571 ;-
3572 ;-
3573 ;-
3574 }
executed 775 times by 1 test: end of block
Executed by:
  • Self test (438)
775
3575 sqlite3VdbeJumpHere(v, pIn->addrInTop-1);-
3576 }
executed 813 times by 1 test: end of block
Executed by:
  • Self test (438)
813
3577 }
executed 679 times by 1 test: end of block
Executed by:
  • Self test (438)
679
3578 sqlite3VdbeResolveLabel(v, pLevel->addrBrk);-
3579 if( pLevel->addrSkip
pLevel->addrSkipDescription
TRUEevaluated 44 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 278452 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
44-278452
3580 sqlite3VdbeGoto(v, pLevel->addrSkip);-
3581 ;-
3582 sqlite3VdbeJumpHere(v, pLevel->addrSkip);-
3583 sqlite3VdbeJumpHere(v, pLevel->addrSkip-2);-
3584 }
executed 44 times by 1 test: end of block
Executed by:
  • Self test (438)
44
3585-
3586 if( pLevel->addrLikeRep
pLevel->addrLikeRepDescription
TRUEevaluated 1726 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 276770 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
1726-276770
3587 sqlite3VdbeAddOp2(v, 49, (int)(pLevel->iLikeRepCntr>>1),-
3588 pLevel->addrLikeRep);-
3589 ;-
3590 }
executed 1726 times by 1 test: end of block
Executed by:
  • Self test (438)
1726
3591-
3592 if( pLevel->iLeftJoin
pLevel->iLeftJoinDescription
TRUEevaluated 425 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 278071 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
425-278071
3593 int ws = pLoop->wsFlags;-
3594 addr = sqlite3VdbeAddOp1(v, 47, pLevel->iLeftJoin); ;-
3595 -
3596 ((void) (0))-
3597 ;-
3598 if( (
(ws & 0x00000040)==0Description
TRUEevaluated 226 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 199 times by 1 test
Evaluated by:
  • Self test (438)
ws & 0x00000040)==0
(ws & 0x00000040)==0Description
TRUEevaluated 226 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 199 times by 1 test
Evaluated by:
  • Self test (438)
){
199-226
3599 -
3600 ((void) (0))-
3601 ;-
3602 sqlite3VdbeAddOp1(v, 130, pLevel->iTabCur);-
3603 }
executed 226 times by 1 test: end of block
Executed by:
  • Self test (438)
226
3604 if( (
(ws & 0x00000200)Description
TRUEevaluated 248 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 177 times by 1 test
Evaluated by:
  • Self test (438)
ws & 0x00000200)
(ws & 0x00000200)Description
TRUEevaluated 248 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 177 times by 1 test
Evaluated by:
  • Self test (438)
177-248
3605 || ((
(ws & 0x00002000)Description
TRUEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 164 times by 1 test
Evaluated by:
  • Self test (438)
ws & 0x00002000)
(ws & 0x00002000)Description
TRUEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 164 times by 1 test
Evaluated by:
  • Self test (438)
&& pLevel->u.pCovidx
pLevel->u.pCovidxDescription
TRUEevaluated 3 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 10 times by 1 test
Evaluated by:
  • Self test (438)
)
3-164
3606 ){-
3607 sqlite3VdbeAddOp1(v, 130, pLevel->iIdxCur);-
3608 }
executed 251 times by 1 test: end of block
Executed by:
  • Self test (438)
251
3609 if( pLevel->op==66
pLevel->op==66Description
TRUEevaluated 13 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 412 times by 1 test
Evaluated by:
  • Self test (438)
){
13-412
3610 sqlite3VdbeAddOp2(v, 12, pLevel->p1, pLevel->addrFirst);-
3611 }
executed 13 times by 1 test: end of block
Executed by:
  • Self test (438)
else{
13
3612 sqlite3VdbeGoto(v, pLevel->addrFirst);-
3613 }
executed 412 times by 1 test: end of block
Executed by:
  • Self test (438)
412
3614 sqlite3VdbeJumpHere(v, addr);-
3615 }
executed 425 times by 1 test: end of block
Executed by:
  • Self test (438)
425
3616 -
3617 ;-
3618 }
executed 278496 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
278496
3619-
3620-
3621-
3622-
3623 sqlite3VdbeResolveLabel(v, pWInfo->iBreak);-
3624-
3625 -
3626 ((void) (0))-
3627 ;-
3628 for(i=0, pLevel=pWInfo->a; i<pWInfo->nLevel
i<pWInfo->nLevelDescription
TRUEevaluated 278496 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
FALSEevaluated 332004 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
; i++, pLevel++){
278496-332004
3629 int k, last;-
3630 VdbeOp *pOp;-
3631 Index *pIdx = 0;-
3632 struct SrcList_item *pTabItem = &pTabList->a[pLevel->iFrom];-
3633 Table *pTab = pTabItem->pTab;-
3634 -
3635 ((void) (0))-
3636 ;-
3637 pLoop = pLevel->pWLoop;-
3638-
3639-
3640-
3641-
3642-
3643 if( pTabItem->fg.viaCoroutine
pTabItem->fg.viaCoroutineDescription
TRUEevaluated 35364 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 243132 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
35364-243132
3644 ;-
3645 translateColumnToCopy(pParse, pLevel->addrBody, pLevel->iTabCur,-
3646 pTabItem->regResult, 0);-
3647 continue;
executed 35364 times by 1 test: continue;
Executed by:
  • Self test (438)
35364
3648 }-
3649 if( pLoop->wsFlags & (0x00000200|0x00000040)
pLoop->wsFlags...00|0x00000040)Description
TRUEevaluated 31277 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 211855 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
31277-211855
3650 pIdx = pLoop->u.btree.pIndex;-
3651 }
executed 31277 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
else if( pLoop->wsFlags & 0x00002000
pLoop->wsFlags & 0x00002000Description
TRUEevaluated 2366 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 209489 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
){
2366-209489
3652 pIdx = pLevel->u.pCovidx;-
3653 }
executed 2366 times by 1 test: end of block
Executed by:
  • Self test (438)
2366
3654 if( pIdx
pIdxDescription
TRUEevaluated 31479 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 211653 times by 435 tests
Evaluated by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
31479-211653
3655 && (pWInfo->eOnePass==0
pWInfo->eOnePass==0Description
TRUEevaluated 30936 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 543 times by 1 test
Evaluated by:
  • Self test (438)
|| !(((pIdx->pTable)->tabFlags & 0x0020)==0)
!(((pIdx->pTab... & 0x0020)==0)Description
TRUEevaluated 192 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 351 times by 1 test
Evaluated by:
  • Self test (438)
)
192-30936
3656 && !db->mallocFailed
!db->mallocFailedDescription
TRUEevaluated 31116 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 12 times by 1 test
Evaluated by:
  • Self test (438)
12-31116
3657 ){-
3658 last = sqlite3VdbeCurrentAddr(v);-
3659 k = pLevel->addrBody;-
3660-
3661-
3662-
3663-
3664-
3665 pOp = sqlite3VdbeGetOp(v, k);-
3666 for(; k<last
k<lastDescription
TRUEevaluated 1092366 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 31116 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
; k++, pOp++){
31116-1092366
3667 if( pOp->p1!=pLevel->iTabCur
pOp->p1!=pLevel->iTabCurDescription
TRUEevaluated 1000336 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 92030 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
) continue;
executed 1000336 times by 2 tests: continue;
Executed by:
  • Self test (438)
  • Self test (47)
92030-1000336
3668 if( pOp->opcode==90
pOp->opcode==90Description
TRUEevaluated 38676 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 53354 times by 1 test
Evaluated by:
  • Self test (438)
38676-53354
3669-
3670-
3671-
3672 ){-
3673 int x = pOp->p2;-
3674 -
3675 ((void) (0))-
3676 ;-
3677 if( !(((pTab)->tabFlags & 0x0020)==0)
!(((pTab)->tab... & 0x0020)==0)Description
TRUEevaluated 2004 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 36672 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
2004-36672
3678 Index *pPk = sqlite3PrimaryKeyIndex(pTab);-
3679 x = pPk->aiColumn[x];-
3680 -
3681 ((void) (0))-
3682 ;-
3683 }
executed 2004 times by 1 test: end of block
Executed by:
  • Self test (438)
2004
3684 x = sqlite3ColumnOfIndex(pIdx, x);-
3685 if( x>=0
x>=0Description
TRUEevaluated 22078 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
FALSEevaluated 16598 times by 2 tests
Evaluated by:
  • Self test (438)
  • Self test (47)
){
16598-22078
3686 pOp->p2 = x;-
3687 pOp->p1 = pLevel->iIdxCur;-
3688 ;-
3689 }
executed 22078 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
22078
3690 -
3691 ((void) (0))-
3692 -
3693 ;-
3694 }
executed 38676 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
else if( pOp->opcode==129
pOp->opcode==129Description
TRUEevaluated 22402 times by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 30952 times by 1 test
Evaluated by:
  • Self test (438)
){
22402-38676
3695 pOp->p1 = pLevel->iIdxCur;-
3696 pOp->opcode = 136;-
3697 ;-
3698 }
executed 22402 times by 1 test: end of block
Executed by:
  • Self test (438)
else if( pOp->opcode==21
pOp->opcode==21Description
TRUEevaluated 1 time by 1 test
Evaluated by:
  • Self test (438)
FALSEevaluated 30951 times by 1 test
Evaluated by:
  • Self test (438)
){
1-30951
3699 pOp->p1 = pLevel->iIdxCur;-
3700 ;-
3701 }
executed 1 time by 1 test: end of block
Executed by:
  • Self test (438)
1
3702 }
executed 92030 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
92030
3703-
3704-
3705-
3706 }
executed 31116 times by 2 tests: end of block
Executed by:
  • Self test (438)
  • Self test (47)
31116
3707 }
executed 243132 times by 435 tests: end of block
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
243132
3708-
3709-
3710-
3711 pParse->nQueryLoop = pWInfo->savedNQueryLoop;-
3712 whereInfoFree(db, pWInfo);-
3713 return;
executed 332004 times by 435 tests: return;
Executed by:
  • Self test
  • Self test (10)
  • Self test (100)
  • Self test (101)
  • Self test (103)
  • Self test (104)
  • Self test (105)
  • Self test (106)
  • Self test (107)
  • Self test (108)
  • Self test (109)
  • Self test (11)
  • Self test (110)
  • Self test (111)
  • Self test (112)
  • Self test (113)
  • Self test (114)
  • Self test (115)
  • Self test (116)
  • Self test (117)
  • Self test (118)
  • Self test (119)
  • Self test (12)
  • Self test (120)
  • Self test (121)
  • ...
332004
3714}-
Switch to Source codePreprocessed file

Generated by Squish Coco 4.2.2