From 8e909781464ad8a33aac250487a4c71c9f69fce5 Mon Sep 17 00:00:00 2001 From: "Vadim B. Mikheev" Date: Wed, 22 Jan 1997 05:26:50 +0000 Subject: Fixing bug in INDEXSCAN_PATCH: ExecInitIndexScan now works with operands of Param type and (!!!) postquel_execute() now substitutes param values before calling postquel_start(). --- src/backend/executor/functions.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) (limited to 'src/backend/executor/functions.c') diff --git a/src/backend/executor/functions.c b/src/backend/executor/functions.c index a1e6bf1c45a..d9094c6b65e 100644 --- a/src/backend/executor/functions.c +++ b/src/backend/executor/functions.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.4 1996/11/06 06:47:36 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/executor/functions.c,v 1.5 1997/01/22 05:26:37 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -281,15 +281,26 @@ postquel_execute(execution_state *es, { TupleTableSlot *slot; Datum value; + +#ifdef INDEXSCAN_PATCH + /* + * It's more right place to do it (before postquel_start->ExecutorStart). + * Now ExecutorStart->ExecInitIndexScan->ExecEvalParam works ok. + * (But note: I HOPE we can do it here). - vadim 01/22/97 + */ + if (fcache->nargs > 0) + postquel_sub_params(es, fcache->nargs, args, fcache->nullVect); +#endif if (es->status == F_EXEC_START) { (void) postquel_start(es); es->status = F_EXEC_RUN; } - +#ifndef INDEXSCAN_PATCH if (fcache->nargs > 0) postquel_sub_params(es, fcache->nargs, args, fcache->nullVect); +#endif slot = postquel_getnext(es); -- cgit v1.2.3