~ubuntu-branches/ubuntu/quantal/postgresql-9.1/quantal-proposed

« back to all changes in this revision

Viewing changes to doc/src/sgml/html/release-8-1.html

  • Committer: Package Import Robot
  • Author(s): Martin Pitt
  • Date: 2011-12-02 14:39:18 UTC
  • mfrom: (12.1.1 sid)
  • Revision ID: package-import@ubuntu.com-20111202143918-1ftj0oo87w0y8m8d
* New upstream bug fix release:
  - Fix bugs in information_schema.referential_constraints view.
    This view was being insufficiently careful about matching the
    foreign-key constraint to the depended-on primary or unique key
    constraint. That could result in failure to show a foreign key
    constraint at all, or showing it multiple times, or claiming that
    it depends on a different constraint than the one it really does.
    Since the view definition is installed by initdb, merely upgrading
    will not fix the problem. If you need to fix this in an existing
    installation, you can (as a superuser) drop the information_schema
    schema then re-create it by sourcing
    "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
    you're uncertain where "SHAREDIR" is.) This must be repeated in
    each database to be fixed.
  - Make "contrib/citext"'s upgrade script fix collations of citext
    columns and indexes.
    Existing citext columns and indexes aren't correctly marked as
    being of a collatable data type during pg_upgrade from a pre-9.1
    server. That leads to operations on them failing with errors such
    as "could not determine which collation to use for string
    comparison". This change allows them to be fixed by the same script
    that upgrades the citext module into a proper 9.1 extension during
    CREATE EXTENSION citext FROM unpackaged.
    If you have a previously-upgraded database that is suffering from
    this problem, and you already ran the "CREATE EXTENSION" command,
    you can manually run (as superuser) the "UPDATE" commands found at
    the end of "SHAREDIR/extension/citext--unpackaged--1.0.sql". (Run
    pg_config --sharedir if you're uncertain where "SHAREDIR" is.)
  - Fix possible crash during "UPDATE" or "DELETE" that joins to the
    output of a scalar-returning function.
  - Fix incorrect replay of WAL records for GIN index updates.
  - Fix TOAST-related data corruption during CREATE TABLE dest AS
    SELECT - FROM src or INSERT INTO dest SELECT * FROM src.
  - Fix possible failures during hot standby startup.
  - Start hot standby faster when initial snapshot is incomplete.
  - Fix race condition during toast table access from stale syscache
    entries. The typical symptom was transient errors like "missing chunk
    number 0 for toast value NNNNN in pg_toast_2619", where the cited toast
    table would always belong to a system catalog.
  - Track dependencies of functions on items used in parameter default
    expressions. Previously, a referenced object could be dropped without
    having dropped or modified the function, leading to misbehavior when
    the function was used. Note that merely installing this update will not
    fix the missing dependency entries; to do that, you'd need to
    "CREATE OR REPLACE" each such function afterwards. If you have
    functions whose defaults depend on non-built-in objects, doing so
    is recommended.
  - Fix incorrect management of placeholder variables in nestloop joins.
    This bug is known to lead to "variable not found in subplan target
    list" planner errors, and could possibly result in wrong query
    output when outer joins are involved.
  - Fix window functions that sort by expressions involving aggregates.
  - Fix "MergeAppend child's targetlist doesn't match MergeAppend"
    planner errors.
  - Fix index matching for operators with both collatable and
    noncollatable inputs. In 9.1.0, an indexable operator that has a
    non-collatable left-hand input type and a collatable right-hand input
    type would not be recognized as matching the left-hand column's index.
    An example is the hstore ? text operator.
  - Allow inlining of set-returning SQL functions with multiple OUT
    parameters.
  - Don't trust deferred-unique indexes for join removal.
  - Make DatumGetInetP() unpack inet datums that have a 1-byte header,
    and add a new macro, DatumGetInetPP(), that does not.
  - Improve locale support in money type's input and output.
    Aside from not supporting all standard lc_monetary formatting
    options, the input and output functions were inconsistent, meaning
    there were locales in which dumped money values could not be
    re-read.
  - Don't let transform_null_equals affect CASE foo WHEN NULL ...
    constructs.  transform_null_equals is only supposed to affect foo =
    NULL expressions written directly by the user, not equality checks
    generated internally by this form of CASE.
  - Change foreign-key trigger creation order to better support
    self-referential foreign keys.
  - Fix IF EXISTS to work correctly in "DROP OPERATOR FAMILY".
  - Disallow dropping of an extension from within its own script.
  - Don't mark auto-generated types as extension members.
  - Cope with invalid pre-existing search_path settings during "CREATE
    EXTENSION".
  - Avoid floating-point underflow while tracking buffer allocation
    rate.
  - Prevent autovacuum transactions from running in serializable mode.
    Autovacuum formerly used the cluster-wide default transaction
    isolation level, but there is no need for it to use anything higher
    than READ COMMITTED, and using SERIALIZABLE could result in
    unnecessary delays for other processes.
  - Ensure walsender processes respond promptly to SIGTERM.
  - Exclude "postmaster.opts" from base backups.
  - Fix incorrect field alignment in ecpg's SQLDA area.
  - Preserve blank lines within commands in psql's command history.
    The former behavior could cause problems if an empty line was
    removed from within a string literal, for example.
  - Avoid platform-specific infinite loop in pg_dump.
  - Fix compression of plain-text output format in pg_dump.
    pg_dump has historically understood -Z with no -F switch to mean
    that it should emit a gzip-compressed version of its plain text
    output. Restore that behavior.
  - Fix pg_dump to dump user-defined casts between auto-generated
    types, such as table rowtypes.
  - Fix missed quoting of foreign server names in pg_dump.
  - Assorted fixes for pg_upgrade. Handle exclusion constraints correctly,
    avoid failures on Windows, don't complain about mismatched toast table
    names in 8.4 databases.
  - In PL/pgSQL, allow foreign tables to define row types.
  - Fix up conversions of PL/Perl functions' results.
    Restore the pre-9.1 behavior that PL/Perl functions returning void
    ignore the result value of their last Perl statement; 9.1.0 would
    throw an error if that statement returned a reference. Also, make
    sure it works to return a string value for a composite type, so
    long as the string meets the type's input format. In addition,
    throw errors for attempts to return Perl arrays or hashes when the
    function's declared result type is not an array or composite type,
    respectively. (Pre-9.1 versions rather uselessly returned strings
    like ARRAY(0x221a9a0) or HASH(0x221aa90) in such cases.)
  - Ensure PL/Perl strings are always correctly UTF8-encoded.
  - Use the preferred version of xsubpp to build PL/Perl, not
    necessarily the operating system's main copy.
  - Correctly propagate SQLSTATE in PL/Python exceptions.
  - Do not install PL/Python extension files for Python major versions
    other than the one built against.
  - Change all the "contrib" extension script files to report a useful
    error message if they are fed to psql. This should help teach people
    about the new method of using "CREATE EXTENSION" to load these files.
    In most cases, sourcing the scripts directly would fail anyway, but
    with harder-to-interpret messages.
  - Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn".
  - Remove "contrib/sepgsql" tests from the regular regression test
    mechanism. Since these tests require root privileges for setup, they're
    impractical to run automatically. Switch over to a manual approach
    instead, and provide a testing script to help with that.
  - Fix assorted errors in "contrib/unaccent"'s configuration file
    parsing.
  - Honor query cancel interrupts promptly in pgstatindex().
  - Revert unintentional enabling of WAL_DEBUG. Fortunately, as debugging
    tools go, this one is pretty cheap; but it's not intended to be enabled
    by default, so revert.
  - Ensure VPATH builds properly install all server header files.
  - Shorten file names reported in verbose error messages.
    Regular builds have always reported just the name of the C file
    containing the error message call, but VPATH builds formerly
    reported an absolute path name.
* debian/rules: Fix build failure for binary-indep-only builds.
  (Closes: #646079)

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
REV="MADE"
10
10
HREF="mailto:pgsql-docs@postgresql.org"><LINK
11
11
REL="HOME"
12
 
TITLE="PostgreSQL 9.1.1 Documentation"
 
12
TITLE="PostgreSQL 9.1.2 Documentation"
13
13
HREF="index.html"><LINK
14
14
REL="UP"
15
15
TITLE="Release Notes"
26
26
HTTP-EQUIV="Content-Type"
27
27
CONTENT="text/html; charset=ISO-8859-1"><META
28
28
NAME="creation"
29
 
CONTENT="2011-09-22T22:13:27"></HEAD
 
29
CONTENT="2011-12-01T22:07:59"></HEAD
30
30
><BODY
31
31
CLASS="SECT1"
32
32
><DIV
44
44
VALIGN="bottom"
45
45
><A
46
46
HREF="index.html"
47
 
>PostgreSQL 9.1.1 Documentation</A
 
47
>PostgreSQL 9.1.2 Documentation</A
48
48
></TH
49
49
></TR
50
50
><TR
63
63
ALIGN="left"
64
64
VALIGN="top"
65
65
><A
66
 
TITLE="Release Notes"
67
66
HREF="release.html"
68
 
>Fast Backward</A
 
67
ACCESSKEY="U"
 
68
>Up</A
69
69
></TD
70
70
><TD
71
71
WIDTH="60%"
73
73
VALIGN="bottom"
74
74
>Appendix E. Release Notes</TD
75
75
><TD
76
 
WIDTH="10%"
77
 
ALIGN="right"
78
 
VALIGN="top"
79
 
><A
80
 
TITLE="Release Notes"
81
 
HREF="release.html"
82
 
>Fast Forward</A
83
 
></TD
84
 
><TD
85
 
WIDTH="10%"
 
76
WIDTH="20%"
86
77
ALIGN="right"
87
78
VALIGN="top"
88
79
><A
102
93
CLASS="SECT1"
103
94
><A
104
95
NAME="RELEASE-8-1"
105
 
>E.82. Release 8.1</A
 
96
>E.87. Release 8.1</A
106
97
></H1
107
98
><DIV
108
99
CLASS="NOTE"
119
110
><H2
120
111
CLASS="SECT2"
121
112
><A
122
 
NAME="AEN120012"
123
 
>E.82.1. Overview</A
 
113
NAME="AEN120747"
 
114
>E.87.1. Overview</A
124
115
></H2
125
116
><P
126
117
>    Major changes in this release:
382
373
><H2
383
374
CLASS="SECT2"
384
375
><A
385
 
NAME="AEN120092"
386
 
>E.82.2. Migration to Version 8.1</A
 
376
NAME="AEN120827"
 
377
>E.87.2. Migration to Version 8.1</A
387
378
></H2
388
379
><P
389
380
>    A dump/restore using <SPAN
919
910
><H2
920
911
CLASS="SECT2"
921
912
><A
922
 
NAME="AEN120228"
923
 
>E.82.3. Additional Changes</A
 
913
NAME="AEN120963"
 
914
>E.87.3. Additional Changes</A
924
915
></H2
925
916
><P
926
917
>    Below you will find a detailed account of the additional changes
935
926
><H3
936
927
CLASS="SECT3"
937
928
><A
938
 
NAME="AEN120232"
939
 
>E.82.3.1. Performance Improvements</A
 
929
NAME="AEN120967"
 
930
>E.87.3.1. Performance Improvements</A
940
931
></H3
941
932
><P
942
933
></P
1103
1094
><H3
1104
1095
CLASS="SECT3"
1105
1096
><A
1106
 
NAME="AEN120284"
1107
 
>E.82.3.2. Server Changes</A
 
1097
NAME="AEN121019"
 
1098
>E.87.3.2. Server Changes</A
1108
1099
></H3
1109
1100
><P
1110
1101
></P
1311
1302
><H3
1312
1303
CLASS="SECT3"
1313
1304
><A
1314
 
NAME="AEN120349"
1315
 
>E.82.3.3. Query Changes</A
 
1305
NAME="AEN121084"
 
1306
>E.87.3.3. Query Changes</A
1316
1307
></H3
1317
1308
><P
1318
1309
></P
1449
1440
><H3
1450
1441
CLASS="SECT3"
1451
1442
><A
1452
 
NAME="AEN120390"
1453
 
>E.82.3.4. Object Manipulation Changes</A
 
1443
NAME="AEN121125"
 
1444
>E.87.3.4. Object Manipulation Changes</A
1454
1445
></H3
1455
1446
><P
1456
1447
></P
1520
1511
><H3
1521
1512
CLASS="SECT3"
1522
1513
><A
1523
 
NAME="AEN120409"
1524
 
>E.82.3.5. Utility Command Changes</A
 
1514
NAME="AEN121144"
 
1515
>E.87.3.5. Utility Command Changes</A
1525
1516
></H3
1526
1517
><P
1527
1518
></P
1716
1707
><H3
1717
1708
CLASS="SECT3"
1718
1709
><A
1719
 
NAME="AEN120465"
1720
 
>E.82.3.6. Data Type and Function Changes</A
 
1710
NAME="AEN121200"
 
1711
>E.87.3.6. Data Type and Function Changes</A
1721
1712
></H3
1722
1713
><P
1723
1714
></P
2146
2137
><H3
2147
2138
CLASS="SECT3"
2148
2139
><A
2149
 
NAME="AEN120600"
2150
 
>E.82.3.7. Encoding and Locale Changes</A
 
2140
NAME="AEN121335"
 
2141
>E.87.3.7. Encoding and Locale Changes</A
2151
2142
></H3
2152
2143
><P
2153
2144
></P
2265
2256
><H3
2266
2257
CLASS="SECT3"
2267
2258
><A
2268
 
NAME="AEN120639"
2269
 
>E.82.3.8. General Server-Side Language Changes</A
 
2259
NAME="AEN121374"
 
2260
>E.87.3.8. General Server-Side Language Changes</A
2270
2261
></H3
2271
2262
><P
2272
2263
></P
2354
2345
><H3
2355
2346
CLASS="SECT3"
2356
2347
><A
2357
 
NAME="AEN120666"
2358
 
>E.82.3.9. PL/pgSQL Server-Side Language Changes</A
 
2348
NAME="AEN121401"
 
2349
>E.87.3.9. PL/pgSQL Server-Side Language Changes</A
2359
2350
></H3
2360
2351
><P
2361
2352
></P
2496
2487
><H3
2497
2488
CLASS="SECT3"
2498
2489
><A
2499
 
NAME="AEN120711"
2500
 
>E.82.3.10. PL/Perl Server-Side Language Changes</A
 
2490
NAME="AEN121446"
 
2491
>E.87.3.10. PL/Perl Server-Side Language Changes</A
2501
2492
></H3
2502
2493
><P
2503
2494
></P
2589
2580
><H3
2590
2581
CLASS="SECT3"
2591
2582
><A
2592
 
NAME="AEN120740"
2593
 
>E.82.3.11. <SPAN
 
2583
NAME="AEN121475"
 
2584
>E.87.3.11. <SPAN
2594
2585
CLASS="APPLICATION"
2595
2586
>psql</SPAN
2596
2587
> Changes</A
2759
2750
><H3
2760
2751
CLASS="SECT3"
2761
2752
><A
2762
 
NAME="AEN120792"
2763
 
>E.82.3.12. <SPAN
 
2753
NAME="AEN121527"
 
2754
>E.87.3.12. <SPAN
2764
2755
CLASS="APPLICATION"
2765
2756
>pg_dump</SPAN
2766
2757
> Changes</A
2873
2864
><H3
2874
2865
CLASS="SECT3"
2875
2866
><A
2876
 
NAME="AEN120826"
2877
 
>E.82.3.13. <SPAN
 
2867
NAME="AEN121561"
 
2868
>E.87.3.13. <SPAN
2878
2869
CLASS="APPLICATION"
2879
2870
>libpq</SPAN
2880
2871
> Changes</A
2924
2915
><H3
2925
2916
CLASS="SECT3"
2926
2917
><A
2927
 
NAME="AEN120841"
2928
 
>E.82.3.14. Source Code Changes</A
 
2918
NAME="AEN121576"
 
2919
>E.87.3.14. Source Code Changes</A
2929
2920
></H3
2930
2921
><P
2931
2922
></P
3107
3098
><H3
3108
3099
CLASS="SECT3"
3109
3100
><A
3110
 
NAME="AEN120899"
3111
 
>E.82.3.15. Contrib Changes</A
 
3101
NAME="AEN121634"
 
3102
>E.87.3.15. Contrib Changes</A
3112
3103
></H3
3113
3104
><P
3114
3105
></P