aboutsummaryrefslogtreecommitdiff
path: root/src/wherecode.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2018-05-04 00:39:43 +0000
committerdrh <drh@noemail.net>2018-05-04 00:39:43 +0000
commit5d72d9245d1d8c8d5ce2ac1528318ceb8c570898 (patch)
tree055518391aaecae1352a90d5deae2420ff0451cb /src/wherecode.c
parent438852256126074be4956414633514a8d205a0dd (diff)
downloadsqlite-5d72d9245d1d8c8d5ce2ac1528318ceb8c570898.tar.gz
sqlite-5d72d9245d1d8c8d5ce2ac1528318ceb8c570898.zip
Make a separate limb in the EXPLAIN QUERY PLAN output for the various lines
associated with the OR-optimization. FossilOrigin-Name: 75ac7b4e4fd0811ca80c719badacff207e0bbd00ac64dde3b3d4ec676fad472d
Diffstat (limited to 'src/wherecode.c')
-rw-r--r--src/wherecode.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/wherecode.c b/src/wherecode.c
index 7f9933fad..df45bd73e 100644
--- a/src/wherecode.c
+++ b/src/wherecode.c
@@ -1934,6 +1934,7 @@ Bitmask sqlite3WhereCodeOneLoopStart(
** sub-WHERE clause is to to invoke the main loop body as a subroutine.
*/
wctrlFlags = WHERE_OR_SUBCLAUSE | (pWInfo->wctrlFlags & WHERE_SEEK_TABLE);
+ ExplainQueryPlan((pParse, 1, "MULTI-INDEX OR"));
for(ii=0; ii<pOrWc->nTerm; ii++){
WhereTerm *pOrTerm = &pOrWc->a[ii];
if( pOrTerm->leftCursor==iCur || (pOrTerm->eOperator & WO_AND)!=0 ){
@@ -2054,6 +2055,7 @@ Bitmask sqlite3WhereCodeOneLoopStart(
}
}
}
+ ExplainQueryPlanPop(pParse);
pLevel->u.pCovidx = pCov;
if( pCov ) pLevel->iIdxCur = iCovCur;
if( pAndExpr ){