diff options
author | drh <> | 2024-07-04 16:57:11 +0000 |
---|---|---|
committer | drh <> | 2024-07-04 16:57:11 +0000 |
commit | 0cf237c5b0954aee3da991f8d1fb69e24cccfbaa (patch) | |
tree | f6ca996425181f78428aa0fdc383780bdd09d9aa /src/vdbeaux.c | |
parent | 6357d35da9860ac5494d4653440fb913bdd66b0c (diff) | |
download | sqlite-0cf237c5b0954aee3da991f8d1fb69e24cccfbaa.tar.gz sqlite-0cf237c5b0954aee3da991f8d1fb69e24cccfbaa.zip |
Be more aggressive about reusing subqueries that appear on the RHS of IN
operators that have been replicated due to the predicate push-down optimization.
FossilOrigin-Name: 2accf32b6e45a396503c29eecc14a103bcc7b4c313cde921b26b489704060177
Diffstat (limited to 'src/vdbeaux.c')
-rw-r--r-- | src/vdbeaux.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/vdbeaux.c b/src/vdbeaux.c index 665f6cd17..745d3eaba 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -1413,6 +1413,12 @@ static void freeP4(sqlite3 *db, int p4type, void *p4){ if( db->pnBytesFreed==0 ) sqlite3DeleteTable(db, (Table*)p4); break; } + case P4_SUBRTNSIG: { + SubrtnSig *pSig = (SubrtnSig*)p4; + sqlite3DbFree(db, pSig->zAff); + sqlite3DbFree(db, pSig); + break; + } } } @@ -1992,6 +1998,9 @@ char *sqlite3VdbeDisplayP4(sqlite3 *db, Op *pOp){ zP4 = pOp->p4.pTab->zName; break; } + case P4_SUBRTNSIG: { + break; + } default: { zP4 = pOp->p4.z; } |