Thread: pgsql: Track in the plan the types associated with PARAM_EXECparameter

pgsql: Track in the plan the types associated with PARAM_EXECparameter

From
Robert Haas
Date:
Track in the plan the types associated with PARAM_EXEC parameters.

Up until now, we only tracked the number of parameters, which was
sufficient to allocate an array of Datums of the appropriate size,
but not sufficient to, for example, know how to serialize a Datum
stored in one of those slots.  An upcoming patch wants to do that,
so add this tracking to make it possible.

Patch by me, reviewed by Tom Lane and Amit Kapila.

Discussion: http://postgr.es/m/CA+TgmoYqpxDKn8koHdW8BEKk8FMUL0=e8m2Qe=M+r0UBjr3tuQ@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/e64861c79bda659ee384bc253f651401f953dadc

Modified Files
--------------
src/backend/executor/execMain.c        | 20 +++++++++++++------
src/backend/executor/execParallel.c    |  2 +-
src/backend/nodes/copyfuncs.c          |  2 +-
src/backend/nodes/outfuncs.c           |  4 ++--
src/backend/nodes/readfuncs.c          |  2 +-
src/backend/optimizer/plan/planner.c   |  6 +++---
src/backend/optimizer/plan/subselect.c | 35 +++++++++++++++++++++++++---------
src/backend/optimizer/util/clauses.c   |  2 +-
src/include/nodes/plannodes.h          |  2 +-
src/include/nodes/relation.h           |  6 +++---
10 files changed, 53 insertions(+), 28 deletions(-)