~ubuntu-branches/ubuntu/trusty/postgresql-9.3/trusty-proposed

« back to all changes in this revision

Viewing changes to src/include/nodes/params.h

  • Committer: Package Import Robot
  • Author(s): Martin Pitt
  • Date: 2014-07-24 16:13:59 UTC
  • mfrom: (1.1.8)
  • Revision ID: package-import@ubuntu.com-20140724161359-uk325qfv03euxuuh
Tags: 9.3.5-0ubuntu0.14.04.1
* New upstream bug fix release: (LP: #1348176)
  - pg_upgrade: Users who upgraded to version 9.3 using pg_upgrade may have
    an issue with transaction information which causes VACUUM to eventually
    fail. These users should run the script provided in the release notes to
    determine if their installation is affected, and then take the remedy
    steps outlined there.
  - Various data integrity and other bug fixes.
  - Secure Unix-domain sockets of temporary postmasters started during make
    check.
    Any local user able to access the socket file could connect as the
    server's bootstrap superuser, then proceed to execute arbitrary code as
    the operating-system user running the test, as we previously noted in
    CVE-2014-0067. This change defends against that risk by placing the
    server's socket in a temporary, mode 0700 subdirectory of /tmp.
  - See release notes for details:
    http://www.postgresql.org/about/news/1534/
* Remove pg_regress patches to support --host=/path, obsolete with above
  upstream changes and not applicable any more.
* Drop tcl8.6 patch, applied upstream.
* Add missing logrotate test dependency.

Show diffs side-by-side

added added

removed removed

Lines of Context:
22
22
 *        ParamListInfo
23
23
 *
24
24
 *        ParamListInfo arrays are used to pass parameters into the executor
25
 
 *        for parameterized plans.      Each entry in the array defines the value
 
25
 *        for parameterized plans.  Each entry in the array defines the value
26
26
 *        to be substituted for a PARAM_EXTERN parameter.  The "paramid"
27
27
 *        of a PARAM_EXTERN Param can range from 1 to numParams.
28
28
 *
29
29
 *        Although parameter numbers are normally consecutive, we allow
30
30
 *        ptype == InvalidOid to signal an unused array entry.
31
31
 *
32
 
 *        pflags is a flags field.      Currently the only used bit is:
 
32
 *        pflags is a flags field.  Currently the only used bit is:
33
33
 *        PARAM_FLAG_CONST signals the planner that it may treat this parameter
34
34
 *        as a constant (i.e., generate a plan that works only for this value
35
35
 *        of the parameter).
36
36
 *
37
37
 *        There are two hook functions that can be associated with a ParamListInfo
38
 
 *        array to support dynamic parameter handling.  First, if paramFetch
 
38
 *        array to support dynamic parameter handling.  First, if paramFetch
39
39
 *        isn't null and the executor requires a value for an invalid parameter
40
40
 *        (one with ptype == InvalidOid), the paramFetch hook is called to give
41
41
 *        it a chance to fill in the parameter value.  Second, a parserSetup
85
85
 *        es_param_exec_vals or ecxt_param_exec_vals.
86
86
 *
87
87
 *        If execPlan is not NULL, it points to a SubPlanState node that needs
88
 
 *        to be executed to produce the value.  (This is done so that we can have
 
88
 *        to be executed to produce the value.  (This is done so that we can have
89
89
 *        lazy evaluation of InitPlans: they aren't executed until/unless a
90
90
 *        result value is needed.)      Otherwise the value is assumed to be valid
91
91
 *        when needed.