Thread: pgsql-server: Allow DECLARE CURSOR to take parameters from the portal in

pgsql-server: Allow DECLARE CURSOR to take parameters from the portal in

From
tgl@svr1.postgresql.org (Tom Lane)
Date:
Log Message:
-----------
Allow DECLARE CURSOR to take parameters from the portal in which it is
executed.  Previously, the DECLARE would succeed but subsequent FETCHes
would fail since the parameter values supplied to DECLARE were not
propagated to the portal created for the cursor.
In support of this, add type Oids to ParamListInfo entries, which seems
like a good idea anyway since code that extracts a value can double-check
that it got the type of value it was expecting.
Oliver Jowett, with minor editorialization by Tom Lane.

Modified Files:
--------------
    pgsql-server/src/backend/commands:
        portalcmds.c (r1.30 -> r1.31)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/portalcmds.c.diff?r1=1.30&r2=1.31)
        prepare.c (r1.28 -> r1.29)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/prepare.c.diff?r1=1.28&r2=1.29)
        schemacmds.c (r1.21 -> r1.22)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/commands/schemacmds.c.diff?r1=1.21&r2=1.22)
    pgsql-server/src/backend/executor:
        execQual.c (r1.164 -> r1.165)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/executor/execQual.c.diff?r1=1.164&r2=1.165)
        functions.c (r1.83 -> r1.84)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/executor/functions.c.diff?r1=1.83&r2=1.84)
        spi.c (r1.122 -> r1.123)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/executor/spi.c.diff?r1=1.122&r2=1.123)
    pgsql-server/src/backend/nodes:
        Makefile (r1.16 -> r1.17)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/nodes/Makefile.diff?r1=1.16&r2=1.17)
    pgsql-server/src/backend/optimizer/util:
        clauses.c (r1.176 -> r1.177)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/optimizer/util/clauses.c.diff?r1=1.176&r2=1.177)
    pgsql-server/src/backend/tcop:
        postgres.c (r1.427 -> r1.428)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/tcop/postgres.c.diff?r1=1.427&r2=1.428)
        pquery.c (r1.82 -> r1.83)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/tcop/pquery.c.diff?r1=1.82&r2=1.83)
        utility.c (r1.222 -> r1.223)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/tcop/utility.c.diff?r1=1.222&r2=1.223)
    pgsql-server/src/include/commands:
        portalcmds.h (r1.15 -> r1.16)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/commands/portalcmds.h.diff?r1=1.15&r2=1.16)
    pgsql-server/src/include/nodes:
        params.h (r1.24 -> r1.25)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/nodes/params.h.diff?r1=1.24&r2=1.25)
    pgsql-server/src/include/tcop:
        utility.h (r1.21 -> r1.22)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/include/tcop/utility.h.diff?r1=1.21&r2=1.22)
    pgsql-server/src/pl/plpgsql/src:
        pl_exec.c (r1.112 -> r1.113)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/pl/plpgsql/src/pl_exec.c.diff?r1=1.112&r2=1.113)
    pgsql-server/src/test/regress/expected:
        portals.out (r1.7 -> r1.8)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/expected/portals.out.diff?r1=1.7&r2=1.8)
    pgsql-server/src/test/regress/sql:
        portals.sql (r1.4 -> r1.5)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/test/regress/sql/portals.sql.diff?r1=1.4&r2=1.5)

Added Files:
-----------
    pgsql-server/src/backend/nodes:
        params.c (r1.1)

(http://developer.postgresql.org/cvsweb.cgi/pgsql-server/src/backend/nodes/params.c?rev=1.1&content-type=text/x-cvsweb-markup)