1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-16 23:02:26 +03:00

Add VdbeCoverage() macros. Adjust the Bloom-filter hash function so that it

correctly deals with zero-blobs.

FossilOrigin-Name: 629ee2e3e3125bfd2af435c6713d49e46691213ad15db0a5e93a63a77f1130c2
This commit is contained in:
drh
2021-12-04 18:45:08 +00:00
parent 770dade262
commit 067c60cfc9
5 changed files with 21 additions and 12 deletions

View File

@@ -986,10 +986,10 @@ static SQLITE_NOINLINE void constructBloomFilter(
assert( v!=0 );
iCur = pLevel->iTabCur;
addrCont = sqlite3VdbeMakeLabel(pParse);
addrTop = sqlite3VdbeAddOp0(v, OP_Once);
addrTop = sqlite3VdbeAddOp0(v, OP_Once); VdbeCoverage(v);
pLevel->regFilter = ++pParse->nMem;
sqlite3VdbeAddOp1(v, OP_FilterInit, pLevel->regFilter);
sqlite3VdbeAddOp1(v, OP_Rewind, iCur);
sqlite3VdbeAddOp1(v, OP_Rewind, iCur); VdbeCoverage(v);
pWCEnd = &pWInfo->sWC.a[pWInfo->sWC.nTerm];
for(pTerm=pWInfo->sWC.a; pTerm<pWCEnd; pTerm++){
Expr *pExpr = pTerm->pExpr;
@@ -1016,6 +1016,7 @@ static SQLITE_NOINLINE void constructBloomFilter(
}
sqlite3VdbeResolveLabel(v, addrCont);
sqlite3VdbeAddOp2(v, OP_Next, pLevel->iTabCur, addrTop+3);
VdbeCoverage(v);
sqlite3VdbeJumpHere(v, addrTop);
sqlite3VdbeJumpHere(v, addrTop+2);
}