+
+
Release 9.4.23
+
+
+
Release date:
+
+
+ This release contains a variety of fixes from 9.4.22.
+ For information about new features in the 9.4 major release, see
+ .
+
+
+ The
PostgreSQL community will stop
+ releasing updates for the 9.4.X release series in February 2020.
+ Users are encouraged to update to a newer release branch soon.
+
+
+
+
Migration to Version 9.4.23
+
+ A dump/restore is not required for those running 9.4.X.
+
+
+ However, if you are upgrading from a version earlier than 9.4.18,
+ see .
+
+
+
+
+
Changes
+
+
+
+
+
+ Fix failure of ALTER TABLE ... ALTER COLUMN TYPE
+ when the table has a partial exclusion constraint (Tom Lane)
+
+
+
+
+
+ Fix incorrect printing of queries with duplicate join names
+ (Philip Dubé)
+
+
+ This oversight caused a dump/restore failure for views containing
+ such queries.
+
+
+
+
+
+ Fix misoptimization of {1,1} quantifiers in
+ regular expressions (Tom Lane)
+
+
+ Such quantifiers were treated as no-ops and optimized away;
+ but the documentation specifies that they impose greediness, or
+ non-greediness in the case of the non-greedy
+ variant {1,1}?, on the subexpression they're
+ attached to, and this did not happen. The misbehavior occurred
+ only if the subexpression contained capturing parentheses or a
+ back-reference.
+
+
+
+
+
+ Fix race condition in check to see whether a pre-existing shared
+ memory segment is still in use by a conflicting postmaster (Tom Lane)
+
+
+
+
+
+ Avoid attempting to do database accesses for parameter checking in
+ processes that are not connected to a specific database (Vignesh C,
+ Andres Freund)
+
+
+ This error could result in failures like cannot read pg_class
+ without having selected a database.
+
+
+
+
+
+ Improve
initdb's handling of multiple
+ equivalent names for the system time zone (Tom Lane, Andrew Gierth)
+
+
+ the /etc/localtime symbolic link, if that
+ exists, to break ties between equivalent names for the system time
+ zone. This makes
initdb more likely to
+ select the time zone name that the user would expect when multiple
+ identical time zones exist. It will not change the behavior
+ if /etc/localtime is not a symlink to a zone
+ data file, nor if the time zone is determined from
+ the TZ environment variable.
+
+
+ Separately, prefer UTC over other spellings of
+ that time zone, when neither TZ
+ nor /etc/localtime provide a hint. This fixes
+ an annoyance introduced by
tzdata 2019a's
+ change to make the UCT and UTC
+ zone names equivalent:
initdb was then
+ preferring UCT, which almost nobody wants.
+
+
+
+
+
+ Fix misleading error reports
+ from
reindexdb (Julien Rouhaud)
+
+
+
+
+
+ In contrib/postgres_fdw, account for possible
+ data modifications by local BEFORE ROW UPDATE
+ triggers (Shohei Mochizuki)
+
+
+ If a trigger modified a column that was otherwise not changed by the
+ UPDATE, the new value was not transmitted to the
+ remote server.
+
+
+
+
+
+ On Windows, avoid failure when the database encoding is set to
+ SQL_ASCII and we attempt to log a non-ASCII string (Noah Misch)
+
+
+ The code had been assuming that such strings must be in UTF-8, and
+ would throw an error if they didn't appear to be validly encoded.
+ Now, just transmit the untranslated bytes to the log.
+
+
+
+
+
+ Make
PL/pgSQL's header files C++-safe
+ (George Tarasov)
+
+
+
+
+
+
+
+
Release 9.4.22