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

« back to all changes in this revision

Viewing changes to src/include/commands/vacuum.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:
25
25
 
26
26
/*----------
27
27
 * ANALYZE builds one of these structs for each attribute (column) that is
28
 
 * to be analyzed.      The struct and subsidiary data are in anl_context,
 
28
 * to be analyzed.  The struct and subsidiary data are in anl_context,
29
29
 * so they live until the end of the ANALYZE operation.
30
30
 *
31
31
 * The type-specific typanalyze function is passed a pointer to this struct
32
32
 * and must return TRUE to continue analysis, FALSE to skip analysis of this
33
 
 * column.      In the TRUE case it must set the compute_stats and minrows fields,
 
33
 * column.  In the TRUE case it must set the compute_stats and minrows fields,
34
34
 * and can optionally set extra_data to pass additional info to compute_stats.
35
35
 * minrows is its request for the minimum number of sample rows to be gathered
36
36
 * (but note this request might not be honored, eg if there are fewer rows
73
73
         * type-specific typanalyze function.
74
74
         *
75
75
         * Note: do not assume that the data being analyzed has the same datatype
76
 
         * shown in attr, ie do not trust attr->atttypid, attlen, etc.  This is
 
76
         * shown in attr, ie do not trust attr->atttypid, attlen, etc.  This is
77
77
         * because some index opclasses store a different type than the underlying
78
78
         * column/expression.  Instead use attrtypid, attrtypmod, and attrtype for
79
79
         * information about the datatype being fed to the typanalyze function.