diff options
author | drh <> | 2022-12-20 01:48:43 +0000 |
---|---|---|
committer | drh <> | 2022-12-20 01:48:43 +0000 |
commit | 98164c3452eed2ce879e98c10669a239ab4f081e (patch) | |
tree | fa28fe330896251be2edb22bd4fd438e1923f2a9 /src/expr.c | |
parent | 73e460c932f26be34a987b68e0dc1ee0dc9f57e5 (diff) | |
download | sqlite-98164c3452eed2ce879e98c10669a239ab4f081e.tar.gz sqlite-98164c3452eed2ce879e98c10669a239ab4f081e.zip |
Do not use indexed expressions to replace the expression being indexed on a
RIGHT JOIN as that leads to problems, as shown by
dbsqlfuzz a644e70d7683a7ca59c71861a153c1dccf8850b9.
FossilOrigin-Name: f113eebdbe68246fd38d640b0cdf0fd73ab5d2abad9226274dfa2e41fe286bf0
Diffstat (limited to 'src/expr.c')
-rw-r--r-- | src/expr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/expr.c b/src/expr.c index d12457a81..4d8087579 100644 --- a/src/expr.c +++ b/src/expr.c @@ -6384,6 +6384,7 @@ static void findOrCreateAggInfoColumn( } fix_up_expr: ExprSetVVAProperty(pExpr, EP_NoReduce); + assert( pExpr->pAggInfo==0 || pExpr->pAggInfo==pAggInfo ); pExpr->pAggInfo = pAggInfo; if( pExpr->op==TK_COLUMN ){ pExpr->op = TK_AGG_COLUMN; @@ -6419,6 +6420,7 @@ static int analyzeAggregate(Walker *pWalker, Expr *pExpr){ } if( pIEpr==0 ) break; if( NEVER(!ExprUseYTab(pExpr)) ) break; + assert( pExpr->pAggInfo==0 ); /* If we reach this point, it means that expression pExpr can be ** translated into a reference to an index column as described by |