1
0
mirror of https://github.com/postgres/postgres.git synced 2025-06-27 23:21:58 +03:00

Fixing bug in INDEXSCAN_PATCH:

ExecInitIndexScan now works with operands of Param type and
(!!!) postquel_execute() now substitutes param values
before calling postquel_start().
This commit is contained in:
Vadim B. Mikheev
1997-01-22 05:26:50 +00:00
parent 6850a96933
commit 8e90978146
3 changed files with 53 additions and 6 deletions

View File

@ -26,7 +26,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.9 1996/11/13 20:48:28 scrappy Exp $
* $Header: /cvsroot/pgsql/src/backend/executor/execMain.c,v 1.10 1997/01/22 05:26:27 vadim Exp $
*
*-------------------------------------------------------------------------
*/
@ -170,6 +170,11 @@ ExecutorRun(QueryDesc *queryDesc, EState *estate, int feature, int count)
dest = queryDesc->dest;
destination = (void (*)()) DestToFunction(dest);
#if 0
/*
* It doesn't work in common case (i.g. if function has a aggregate).
* Now we store parameter values before ExecutorStart. - vadim 01/22/97
*/
#ifdef INDEXSCAN_PATCH
/*
* If the plan is an index scan and some of the scan key are
@ -182,6 +187,7 @@ ExecutorRun(QueryDesc *queryDesc, EState *estate, int feature, int count)
econtext = ((IndexScan *)plan)->scan.scanstate->cstate.cs_ExprContext;
ExecIndexReScan((IndexScan *)plan, econtext, plan);
}
#endif
#endif
switch(feature) {