diff options
Diffstat (limited to 'src/backend/commands')
-rw-r--r-- | src/backend/commands/explain.c | 13 | ||||
-rw-r--r-- | src/backend/commands/prepare.c | 7 |
2 files changed, 11 insertions, 9 deletions
diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c index 1260ca00c23..21fa3add4f6 100644 --- a/src/backend/commands/explain.c +++ b/src/backend/commands/explain.c @@ -7,7 +7,7 @@ * Portions Copyright (c) 1994-5, Regents of the University of California * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/explain.c,v 1.192 2009/10/12 18:10:41 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/explain.c,v 1.193 2009/11/04 22:26:04 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -107,8 +107,6 @@ ExplainQuery(ExplainStmt *stmt, const char *queryString, ParamListInfo params, DestReceiver *dest) { ExplainState es; - Oid *param_types; - int num_params; TupOutputState *tstate; List *rewritten; ListCell *lc; @@ -150,9 +148,6 @@ ExplainQuery(ExplainStmt *stmt, const char *queryString, opt->defname))); } - /* Convert parameter type data to the form parser wants */ - getParamListTypes(params, ¶m_types, &num_params); - /* * Run parse analysis and rewrite. Note this also acquires sufficient * locks on the source table(s). @@ -163,8 +158,10 @@ ExplainQuery(ExplainStmt *stmt, const char *queryString, * executed repeatedly. (See also the same hack in DECLARE CURSOR and * PREPARE.) XXX FIXME someday. */ - rewritten = pg_analyze_and_rewrite((Node *) copyObject(stmt->query), - queryString, param_types, num_params); + rewritten = pg_analyze_and_rewrite_params((Node *) copyObject(stmt->query), + queryString, + (ParserSetupHook) setupParserWithParamList, + params); /* emit opening boilerplate */ ExplainBeginOutput(&es); diff --git a/src/backend/commands/prepare.c b/src/backend/commands/prepare.c index 56a16401f35..021c2daf26d 100644 --- a/src/backend/commands/prepare.c +++ b/src/backend/commands/prepare.c @@ -10,7 +10,7 @@ * Copyright (c) 2002-2009, PostgreSQL Global Development Group * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/commands/prepare.c,v 1.99 2009/08/10 05:46:50 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/commands/prepare.c,v 1.100 2009/11/04 22:26:05 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -379,6 +379,11 @@ EvaluateParams(PreparedStatement *pstmt, List *params, paramLI = (ParamListInfo) palloc(sizeof(ParamListInfoData) + (num_params - 1) *sizeof(ParamExternData)); + /* we have static list of params, so no hooks needed */ + paramLI->paramFetch = NULL; + paramLI->paramFetchArg = NULL; + paramLI->parserSetup = NULL; + paramLI->parserSetupArg = NULL; paramLI->numParams = num_params; i = 0; |