diff options
author | drh <> | 2024-09-06 10:35:36 +0000 |
---|---|---|
committer | drh <> | 2024-09-06 10:35:36 +0000 |
commit | c4e84b72958d46aad7a08e77b6e8744e8e3e88ab (patch) | |
tree | 1f58ae7defe9b367f256e779466f1a122d7b9676 /src | |
parent | 56a048054078e316ddb057057c323116b82d8b46 (diff) | |
download | sqlite-c4e84b72958d46aad7a08e77b6e8744e8e3e88ab.tar.gz sqlite-c4e84b72958d46aad7a08e77b6e8744e8e3e88ab.zip |
A testcase() macro added to help ensure that the fix to the omit-noop-join
optimization from yesterday does not regress.
FossilOrigin-Name: 224628b1039b996499e0d806fc0215f175da6f1059eb1b9ac491ac11126971ab
Diffstat (limited to 'src')
-rw-r--r-- | src/where.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/where.c b/src/where.c index 7ca4f533f..35da4caa6 100644 --- a/src/where.c +++ b/src/where.c @@ -6226,8 +6226,9 @@ static SQLITE_NOINLINE Bitmask whereOmitNoopJoin( } } if( pTerm<pEnd ) continue; - WHERETRACE(0xffffffff, ("-> drop loop %c not used\n", pLoop->cId)); + WHERETRACE(0xffffffff,("-> omit unused FROM-clause term %c\n",pLoop->cId)); m1 = MASKBIT(i)-1; + testcase( ((pWInfo->revMask>>1) & ~m1)!=0 ); pWInfo->revMask = (m1 & pWInfo->revMask) | ((pWInfo->revMask>>1) & ~m1); notReady &= ~pLoop->maskSelf; for(pTerm=pWInfo->sWC.a; pTerm<pEnd; pTerm++){ |