Release date: never released
This release contains a variety of fixes from 8.0.15. For information about new features in the 8.0 major release, see Section E.278.
A dump/restore is not required for those running 8.0.X. However, if you are upgrading from a version earlier than 8.0.6, see Section E.272.
ALTER TABLE ADD COLUMN ... PRIMARY
KEY so that the new column is correctly checked to see if
it's been initialized to all non-nulls (Brendan Jurd)
Previous versions neglected to check this requirement at all.
CREATE TABLE failure
when inheriting the “same” constraint from multiple parent
relations that inherited that constraint from a common ancestor
Fix conversions between ISO-8859-5 and other encodings to handle
E with two dots) (Sergey Burladyan)
Fix a few datatype input functions that were allowing unused bytes in their results to contain uninitialized, unpredictable values (Tom)
This could lead to failures in which two apparently identical
literal values were not seen as equal, resulting in the parser
complaining about unmatched
Fix a corner case in regular-expression substring matching
The problem occurs when there is a match to the pattern overall
but the user has specified a parenthesized subexpression and that
subexpression hasn't got a match. An example is
substring('foo' from 'foo(bar)?'). This should
return NULL, since
matched, but it was mistakenly returning the whole-pattern match
Update time zone data files to tzdata release 2008c (for DST law changes in Morocco, Iraq, Choibalsan, Pakistan, Syria, Cuba, Argentina/San_Luis, and Chile)
Fix incorrect result from ecpg's
PGTYPEStimestamp_sub() function (Michael)
Fix core dump in
xpath_table() function when the input
query returns a NULL value (Tom)
contrib/xml2's makefile to not
DatumGetBool macro to not fail
with gcc 4.3 (Tom)
This problem affects “old style” (V0) C functions that return boolean. The fix is already in 8.3, but the need to back-patch it was not realized at the time.
In rare cases a session that had just executed a
LISTEN might not get a notification, even though
one would be expected because the concurrent transaction executing
NOTIFY was observed to commit
A side effect of the fix is that a transaction that has executed
will not see any row in
LISTEN, should it choose to
look; formerly it would have. This behavior was never documented
one way or the other, but it is possible that some applications
depend on the old behavior.
Fix rare crash when an error occurs during a query using a hash index (Heikki)
Fix input of datetime values for February 29 in years BC (Tom)
The former coding was mistaken about which years were leap years.
Fix “unrecognized node
type” error in some variants of
ALTER OWNER (Tom)
Fix pg_ctl to correctly extract the postmaster's port number from command-line options (Itagaki Takahiro, Tom)
pg_ctl start -w could
try to contact the postmaster on the wrong port, leading to bogus
reports of startup failure.
-fwrapv to defend against
possible misoptimization in recent gcc versions (Tom)
This is known to be necessary when building PostgreSQL with gcc 4.3 or later.
Fix display of constant expressions in
ORDER BY and
An explicitly casted constant would be shown incorrectly. This could for example lead to corruption of a view definition during dump and reload.
Fix libpq to handle NOTICE messages correctly during COPY OUT (Tom)
This failure has only been observed to occur when a user-defined datatype's output routine issues a NOTICE, but there is no guarantee it couldn't happen due to other causes.
If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.