~ubuntu-branches/ubuntu/raring/postgresql-8.4/raring

« back to all changes in this revision

Viewing changes to HISTORY

  • Committer: Package Import Robot
  • Author(s): Martin Pitt
  • Date: 2011-12-02 14:46:33 UTC
  • mfrom: (13.1.8 sid)
  • Revision ID: package-import@ubuntu.com-20111202144633-azdcoyqh7sduwr15
Tags: 8.4.10-1
* 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.
  - Fix incorrect replay of WAL records for GIN index updates.
    This could result in transiently failing to find index entries
    after a crash, or on a hot-standby server. The problem would be
    repaired by the next "VACUUM" of the index, however.
  - Fix TOAST-related data corruption during CREATE TABLE dest AS
    SELECT - FROM src or INSERT INTO dest SELECT * FROM src.
    If a table has been modified by "ALTER TABLE ADD COLUMN", attempts
    to copy its data verbatim to another table could produce corrupt
    results in certain corner cases. The problem can only manifest in
    this precise form in 8.4 and later, but we patched earlier versions
    as well in case there are other code paths that could trigger the
    same bug.
  - Fix race condition during toast table access from stale syscache
    entries.
  - 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.
  - Allow inlining of set-returning SQL functions with multiple OUT
    parameters.
  - 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. For a cascading foreign key that
    references its own table, a row update will fire both the ON UPDATE
    trigger and the CHECK trigger as one event. The ON UPDATE trigger must
    execute first, else the CHECK will check a non-final state of the row
    and possibly throw an inappropriate error. However, the firing order of
    these triggers is determined by their names, which generally sort in
    creation order since the triggers have auto-generated names following
    the convention "RI_ConstraintTrigger_NNNN". A proper fix would require
    modifying that convention, which we will do in 9.2, but it seems risky
    to change it in existing releases. So this patch just changes the
    creation order of the triggers. Users encountering this type of error
    should drop and re-create the foreign key constraint to get its triggers
    into the right order.
  - Avoid floating-point underflow while tracking buffer allocation
    rate.
  - 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.
  - Fix pg_dump to dump user-defined casts between auto-generated
    types, such as table rowtypes.
  - Use the preferred version of xsubpp to build PL/Perl, not
    necessarily the operating system's main copy.
  - Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn".
  - Honor query cancel interrupts promptly in pgstatindex().
  - 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.

Show diffs side-by-side

added added

removed removed

Lines of Context:
17
17
   review, so each item is truly a community effort.
18
18
     __________________________________________________________________
19
19
 
 
20
                               Release 8.4.10
 
21
 
 
22
     Release Date: 2011-12-05
 
23
 
 
24
   This release contains a variety of fixes from 8.4.9. For information
 
25
   about new features in the 8.4 major release, see the Section called
 
26
   Release 8.4.
 
27
     __________________________________________________________________
 
28
 
 
29
Migration to Version 8.4.10
 
30
 
 
31
   A dump/restore is not required for those running 8.4.X.
 
32
 
 
33
   However, a longstanding error was discovered in the definition of the
 
34
   information_schema.referential_constraints view. If you rely on correct
 
35
   results from that view, you should replace its definition as explained
 
36
   in the first changelog item below.
 
37
 
 
38
   Also, if you are upgrading from a version earlier than 8.4.8, see the
 
39
   release notes for 8.4.8.
 
40
     __________________________________________________________________
 
41
 
 
42
Changes
 
43
 
 
44
     * Fix bugs in information_schema.referential_constraints view (Tom
 
45
       Lane)
 
46
       This view was being insufficiently careful about matching the
 
47
       foreign-key constraint to the depended-on primary or unique key
 
48
       constraint. That could result in failure to show a foreign key
 
49
       constraint at all, or showing it multiple times, or claiming that
 
50
       it depends on a different constraint than the one it really does.
 
51
       Since the view definition is installed by initdb, merely upgrading
 
52
       will not fix the problem. If you need to fix this in an existing
 
53
       installation, you can (as a superuser) drop the information_schema
 
54
       schema then re-create it by sourcing
 
55
       "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
 
56
       you're uncertain where "SHAREDIR" is.) This must be repeated in
 
57
       each database to be fixed.
 
58
     * Fix incorrect replay of WAL records for GIN index updates (Tom
 
59
       Lane)
 
60
       This could result in transiently failing to find index entries
 
61
       after a crash, or on a hot-standby server. The problem would be
 
62
       repaired by the next "VACUUM" of the index, however.
 
63
     * Fix TOAST-related data corruption during CREATE TABLE dest AS
 
64
       SELECT * FROM src or INSERT INTO dest SELECT * FROM src (Tom Lane)
 
65
       If a table has been modified by "ALTER TABLE ADD COLUMN", attempts
 
66
       to copy its data verbatim to another table could produce corrupt
 
67
       results in certain corner cases. The problem can only manifest in
 
68
       this precise form in 8.4 and later, but we patched earlier versions
 
69
       as well in case there are other code paths that could trigger the
 
70
       same bug.
 
71
     * Fix race condition during toast table access from stale syscache
 
72
       entries (Tom Lane)
 
73
       The typical symptom was transient errors like "missing chunk number
 
74
       0 for toast value NNNNN in pg_toast_2619", where the cited toast
 
75
       table would always belong to a system catalog.
 
76
     * Track dependencies of functions on items used in parameter default
 
77
       expressions (Tom Lane)
 
78
       Previously, a referenced object could be dropped without having
 
79
       dropped or modified the function, leading to misbehavior when the
 
80
       function was used. Note that merely installing this update will not
 
81
       fix the missing dependency entries; to do that, you'd need to
 
82
       "CREATE OR REPLACE" each such function afterwards. If you have
 
83
       functions whose defaults depend on non-built-in objects, doing so
 
84
       is recommended.
 
85
     * Allow inlining of set-returning SQL functions with multiple OUT
 
86
       parameters (Tom Lane)
 
87
     * Make DatumGetInetP() unpack inet datums that have a 1-byte header,
 
88
       and add a new macro, DatumGetInetPP(), that does not (Heikki
 
89
       Linnakangas)
 
90
       This change affects no core code, but might prevent crashes in
 
91
       add-on code that expects DatumGetInetP() to produce an unpacked
 
92
       datum as per usual convention.
 
93
     * Improve locale support in money type's input and output (Tom Lane)
 
94
       Aside from not supporting all standard lc_monetary formatting
 
95
       options, the input and output functions were inconsistent, meaning
 
96
       there were locales in which dumped money values could not be
 
97
       re-read.
 
98
     * Don't let transform_null_equals affect CASE foo WHEN NULL ...
 
99
       constructs (Heikki Linnakangas)
 
100
       transform_null_equals is only supposed to affect foo = NULL
 
101
       expressions written directly by the user, not equality checks
 
102
       generated internally by this form of CASE.
 
103
     * Change foreign-key trigger creation order to better support
 
104
       self-referential foreign keys (Tom Lane)
 
105
       For a cascading foreign key that references its own table, a row
 
106
       update will fire both the ON UPDATE trigger and the CHECK trigger
 
107
       as one event. The ON UPDATE trigger must execute first, else the
 
108
       CHECK will check a non-final state of the row and possibly throw an
 
109
       inappropriate error. However, the firing order of these triggers is
 
110
       determined by their names, which generally sort in creation order
 
111
       since the triggers have auto-generated names following the
 
112
       convention "RI_ConstraintTrigger_NNNN". A proper fix would require
 
113
       modifying that convention, which we will do in 9.2, but it seems
 
114
       risky to change it in existing releases. So this patch just changes
 
115
       the creation order of the triggers. Users encountering this type of
 
116
       error should drop and re-create the foreign key constraint to get
 
117
       its triggers into the right order.
 
118
     * Avoid floating-point underflow while tracking buffer allocation
 
119
       rate (Greg Matthews)
 
120
       While harmless in itself, on certain platforms this would result in
 
121
       annoying kernel log messages.
 
122
     * Preserve configuration file name and line number values when
 
123
       starting child processes under Windows (Tom Lane)
 
124
       Formerly, these would not be displayed correctly in the pg_settings
 
125
       view.
 
126
     * Preserve blank lines within commands in psql's command history
 
127
       (Robert Haas)
 
128
       The former behavior could cause problems if an empty line was
 
129
       removed from within a string literal, for example.
 
130
     * Fix pg_dump to dump user-defined casts between auto-generated
 
131
       types, such as table rowtypes (Tom Lane)
 
132
     * Use the preferred version of xsubpp to build PL/Perl, not
 
133
       necessarily the operating system's main copy (David Wheeler and
 
134
       Alex Hunsaker)
 
135
     * Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn"
 
136
       (Tom Lane)
 
137
       Some functions incorrectly assumed that memory returned by palloc()
 
138
       is guaranteed zeroed.
 
139
     * Honor query cancel interrupts promptly in pgstatindex() (Robert
 
140
       Haas)
 
141
     * Ensure VPATH builds properly install all server header files (Peter
 
142
       Eisentraut)
 
143
     * Shorten file names reported in verbose error messages (Peter
 
144
       Eisentraut)
 
145
       Regular builds have always reported just the name of the C file
 
146
       containing the error message call, but VPATH builds formerly
 
147
       reported an absolute path name.
 
148
     * Fix interpretation of Windows timezone names for Central America
 
149
       (Tom Lane)
 
150
       Map "Central America Standard Time" to CST6, not CST6CDT, because
 
151
       DST is generally not observed anywhere in Central America.
 
152
     * Update time zone data files to tzdata release 2011n for DST law
 
153
       changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa; also
 
154
       historical corrections for Alaska and British East Africa.
 
155
     __________________________________________________________________
 
156
 
20
157
                                Release 8.4.9
21
158
 
22
159
     Release Date: 2011-09-26
2251
2388
       unsafe to use a symlink (Simon)
2252
2389
     __________________________________________________________________
2253
2390
 
 
2391
                               Release 8.3.17
 
2392
 
 
2393
     Release Date: 2011-12-05
 
2394
 
 
2395
   This release contains a variety of fixes from 8.3.16. For information
 
2396
   about new features in the 8.3 major release, see the Section called
 
2397
   Release 8.3.
 
2398
     __________________________________________________________________
 
2399
 
 
2400
Migration to Version 8.3.17
 
2401
 
 
2402
   A dump/restore is not required for those running 8.3.X.
 
2403
 
 
2404
   However, a longstanding error was discovered in the definition of the
 
2405
   information_schema.referential_constraints view. If you rely on correct
 
2406
   results from that view, you should replace its definition as explained
 
2407
   in the first changelog item below.
 
2408
 
 
2409
   Also, if you are upgrading from a version earlier than 8.3.8, see the
 
2410
   release notes for 8.3.8.
 
2411
     __________________________________________________________________
 
2412
 
 
2413
Changes
 
2414
 
 
2415
     * Fix bugs in information_schema.referential_constraints view (Tom
 
2416
       Lane)
 
2417
       This view was being insufficiently careful about matching the
 
2418
       foreign-key constraint to the depended-on primary or unique key
 
2419
       constraint. That could result in failure to show a foreign key
 
2420
       constraint at all, or showing it multiple times, or claiming that
 
2421
       it depends on a different constraint than the one it really does.
 
2422
       Since the view definition is installed by initdb, merely upgrading
 
2423
       will not fix the problem. If you need to fix this in an existing
 
2424
       installation, you can (as a superuser) drop the information_schema
 
2425
       schema then re-create it by sourcing
 
2426
       "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
 
2427
       you're uncertain where "SHAREDIR" is.) This must be repeated in
 
2428
       each database to be fixed.
 
2429
     * Fix TOAST-related data corruption during CREATE TABLE dest AS
 
2430
       SELECT * FROM src or INSERT INTO dest SELECT * FROM src (Tom Lane)
 
2431
       If a table has been modified by "ALTER TABLE ADD COLUMN", attempts
 
2432
       to copy its data verbatim to another table could produce corrupt
 
2433
       results in certain corner cases. The problem can only manifest in
 
2434
       this precise form in 8.4 and later, but we patched earlier versions
 
2435
       as well in case there are other code paths that could trigger the
 
2436
       same bug.
 
2437
     * Fix race condition during toast table access from stale syscache
 
2438
       entries (Tom Lane)
 
2439
       The typical symptom was transient errors like "missing chunk number
 
2440
       0 for toast value NNNNN in pg_toast_2619", where the cited toast
 
2441
       table would always belong to a system catalog.
 
2442
     * Make DatumGetInetP() unpack inet datums that have a 1-byte header,
 
2443
       and add a new macro, DatumGetInetPP(), that does not (Heikki
 
2444
       Linnakangas)
 
2445
       This change affects no core code, but might prevent crashes in
 
2446
       add-on code that expects DatumGetInetP() to produce an unpacked
 
2447
       datum as per usual convention.
 
2448
     * Improve locale support in money type's input and output (Tom Lane)
 
2449
       Aside from not supporting all standard lc_monetary formatting
 
2450
       options, the input and output functions were inconsistent, meaning
 
2451
       there were locales in which dumped money values could not be
 
2452
       re-read.
 
2453
     * Don't let transform_null_equals affect CASE foo WHEN NULL ...
 
2454
       constructs (Heikki Linnakangas)
 
2455
       transform_null_equals is only supposed to affect foo = NULL
 
2456
       expressions written directly by the user, not equality checks
 
2457
       generated internally by this form of CASE.
 
2458
     * Change foreign-key trigger creation order to better support
 
2459
       self-referential foreign keys (Tom Lane)
 
2460
       For a cascading foreign key that references its own table, a row
 
2461
       update will fire both the ON UPDATE trigger and the CHECK trigger
 
2462
       as one event. The ON UPDATE trigger must execute first, else the
 
2463
       CHECK will check a non-final state of the row and possibly throw an
 
2464
       inappropriate error. However, the firing order of these triggers is
 
2465
       determined by their names, which generally sort in creation order
 
2466
       since the triggers have auto-generated names following the
 
2467
       convention "RI_ConstraintTrigger_NNNN". A proper fix would require
 
2468
       modifying that convention, which we will do in 9.2, but it seems
 
2469
       risky to change it in existing releases. So this patch just changes
 
2470
       the creation order of the triggers. Users encountering this type of
 
2471
       error should drop and re-create the foreign key constraint to get
 
2472
       its triggers into the right order.
 
2473
     * Avoid floating-point underflow while tracking buffer allocation
 
2474
       rate (Greg Matthews)
 
2475
       While harmless in itself, on certain platforms this would result in
 
2476
       annoying kernel log messages.
 
2477
     * Preserve blank lines within commands in psql's command history
 
2478
       (Robert Haas)
 
2479
       The former behavior could cause problems if an empty line was
 
2480
       removed from within a string literal, for example.
 
2481
     * Fix pg_dump to dump user-defined casts between auto-generated
 
2482
       types, such as table rowtypes (Tom Lane)
 
2483
     * Use the preferred version of xsubpp to build PL/Perl, not
 
2484
       necessarily the operating system's main copy (David Wheeler and
 
2485
       Alex Hunsaker)
 
2486
     * Fix incorrect coding in "contrib/dict_int" and "contrib/dict_xsyn"
 
2487
       (Tom Lane)
 
2488
       Some functions incorrectly assumed that memory returned by palloc()
 
2489
       is guaranteed zeroed.
 
2490
     * Honor query cancel interrupts promptly in pgstatindex() (Robert
 
2491
       Haas)
 
2492
     * Ensure VPATH builds properly install all server header files (Peter
 
2493
       Eisentraut)
 
2494
     * Shorten file names reported in verbose error messages (Peter
 
2495
       Eisentraut)
 
2496
       Regular builds have always reported just the name of the C file
 
2497
       containing the error message call, but VPATH builds formerly
 
2498
       reported an absolute path name.
 
2499
     * Fix interpretation of Windows timezone names for Central America
 
2500
       (Tom Lane)
 
2501
       Map "Central America Standard Time" to CST6, not CST6CDT, because
 
2502
       DST is generally not observed anywhere in Central America.
 
2503
     * Update time zone data files to tzdata release 2011n for DST law
 
2504
       changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa; also
 
2505
       historical corrections for Alaska and British East Africa.
 
2506
     __________________________________________________________________
 
2507
 
2254
2508
                               Release 8.3.16
2255
2509
 
2256
2510
     Release Date: 2011-09-26
4699
4953
       The new XML support in core PostgreSQL supersedes this module.
4700
4954
     __________________________________________________________________
4701
4955
 
 
4956
                               Release 8.2.23
 
4957
 
 
4958
     Release Date: 2011-12-05
 
4959
 
 
4960
   This release contains a variety of fixes from 8.2.22. For information
 
4961
   about new features in the 8.2 major release, see the Section called
 
4962
   Release 8.2.
 
4963
 
 
4964
   This is expected to be the last PostgreSQL release in the 8.2.X series.
 
4965
   Users are encouraged to update to a newer release branch soon.
 
4966
     __________________________________________________________________
 
4967
 
 
4968
Migration to Version 8.2.23
 
4969
 
 
4970
   A dump/restore is not required for those running 8.2.X.
 
4971
 
 
4972
   However, a longstanding error was discovered in the definition of the
 
4973
   information_schema.referential_constraints view. If you rely on correct
 
4974
   results from that view, you should replace its definition as explained
 
4975
   in the first changelog item below.
 
4976
 
 
4977
   Also, if you are upgrading from a version earlier than 8.2.14, see the
 
4978
   release notes for 8.2.14.
 
4979
     __________________________________________________________________
 
4980
 
 
4981
Changes
 
4982
 
 
4983
     * Fix bugs in information_schema.referential_constraints view (Tom
 
4984
       Lane)
 
4985
       This view was being insufficiently careful about matching the
 
4986
       foreign-key constraint to the depended-on primary or unique key
 
4987
       constraint. That could result in failure to show a foreign key
 
4988
       constraint at all, or showing it multiple times, or claiming that
 
4989
       it depends on a different constraint than the one it really does.
 
4990
       Since the view definition is installed by initdb, merely upgrading
 
4991
       will not fix the problem. If you need to fix this in an existing
 
4992
       installation, you can (as a superuser) drop the information_schema
 
4993
       schema then re-create it by sourcing
 
4994
       "SHAREDIR/information_schema.sql". (Run pg_config --sharedir if
 
4995
       you're uncertain where "SHAREDIR" is.) This must be repeated in
 
4996
       each database to be fixed.
 
4997
     * Fix TOAST-related data corruption during CREATE TABLE dest AS
 
4998
       SELECT * FROM src or INSERT INTO dest SELECT * FROM src (Tom Lane)
 
4999
       If a table has been modified by "ALTER TABLE ADD COLUMN", attempts
 
5000
       to copy its data verbatim to another table could produce corrupt
 
5001
       results in certain corner cases. The problem can only manifest in
 
5002
       this precise form in 8.4 and later, but we patched earlier versions
 
5003
       as well in case there are other code paths that could trigger the
 
5004
       same bug.
 
5005
     * Fix race condition during toast table access from stale syscache
 
5006
       entries (Tom Lane)
 
5007
       The typical symptom was transient errors like "missing chunk number
 
5008
       0 for toast value NNNNN in pg_toast_2619", where the cited toast
 
5009
       table would always belong to a system catalog.
 
5010
     * Improve locale support in money type's input and output (Tom Lane)
 
5011
       Aside from not supporting all standard lc_monetary formatting
 
5012
       options, the input and output functions were inconsistent, meaning
 
5013
       there were locales in which dumped money values could not be
 
5014
       re-read.
 
5015
     * Don't let transform_null_equals affect CASE foo WHEN NULL ...
 
5016
       constructs (Heikki Linnakangas)
 
5017
       transform_null_equals is only supposed to affect foo = NULL
 
5018
       expressions written directly by the user, not equality checks
 
5019
       generated internally by this form of CASE.
 
5020
     * Change foreign-key trigger creation order to better support
 
5021
       self-referential foreign keys (Tom Lane)
 
5022
       For a cascading foreign key that references its own table, a row
 
5023
       update will fire both the ON UPDATE trigger and the CHECK trigger
 
5024
       as one event. The ON UPDATE trigger must execute first, else the
 
5025
       CHECK will check a non-final state of the row and possibly throw an
 
5026
       inappropriate error. However, the firing order of these triggers is
 
5027
       determined by their names, which generally sort in creation order
 
5028
       since the triggers have auto-generated names following the
 
5029
       convention "RI_ConstraintTrigger_NNNN". A proper fix would require
 
5030
       modifying that convention, which we will do in 9.2, but it seems
 
5031
       risky to change it in existing releases. So this patch just changes
 
5032
       the creation order of the triggers. Users encountering this type of
 
5033
       error should drop and re-create the foreign key constraint to get
 
5034
       its triggers into the right order.
 
5035
     * Preserve blank lines within commands in psql's command history
 
5036
       (Robert Haas)
 
5037
       The former behavior could cause problems if an empty line was
 
5038
       removed from within a string literal, for example.
 
5039
     * Use the preferred version of xsubpp to build PL/Perl, not
 
5040
       necessarily the operating system's main copy (David Wheeler and
 
5041
       Alex Hunsaker)
 
5042
     * Honor query cancel interrupts promptly in pgstatindex() (Robert
 
5043
       Haas)
 
5044
     * Ensure VPATH builds properly install all server header files (Peter
 
5045
       Eisentraut)
 
5046
     * Shorten file names reported in verbose error messages (Peter
 
5047
       Eisentraut)
 
5048
       Regular builds have always reported just the name of the C file
 
5049
       containing the error message call, but VPATH builds formerly
 
5050
       reported an absolute path name.
 
5051
     * Fix interpretation of Windows timezone names for Central America
 
5052
       (Tom Lane)
 
5053
       Map "Central America Standard Time" to CST6, not CST6CDT, because
 
5054
       DST is generally not observed anywhere in Central America.
 
5055
     * Update time zone data files to tzdata release 2011n for DST law
 
5056
       changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa; also
 
5057
       historical corrections for Alaska and British East Africa.
 
5058
     __________________________________________________________________
 
5059
 
4702
5060
                               Release 8.2.22
4703
5061
 
4704
5062
     Release Date: 2011-09-26