+ transaction> errors, or to duplicate or vanishing rows.
+ Users upgrading from releases prior to 9.3.0 are not affected.
+ in all databases while having
+ linkend="guc-vacuum-freeze-table-age">vacuum_freeze_table_age>
+ set to zero. This will fix latent corruption but will not be able to
+ fix all pre-existing data errors.
+
+
+ As a separate issue, these bugs can also cause standby servers to get
+ out of sync with the primary, thus exhibiting data errors that are not
+ in the primary. Therefore, it's recommended that 9.3.0 and 9.3.1
+ standby servers be re-cloned from the primary (e.g., with a new base
+ backup) after upgrading.
+
+
+
+
+
+
+ Fix initialization of pg_clog> and pg_subtrans>
+ during hot standby startup (Andres Freund)
+
+
+ This bug can cause data loss on standby servers at the moment they
+ start to accept read-only queries, by marking committed transactions
+ as uncommitted. The likelihood of such corruption is small unless, at
+ the time of standby startup, the primary server has executed many
+ updating transactions since its last checkpoint. Symptoms include
+ missing rows, rows that should have been deleted being still visible,
+ and obsolete versions of updated rows being still visible alongside
+ their newer versions.
+
+
+ This bug was introduced in versions 9.3.0, 9.2.5, 9.1.10, and 9.0.14.
+ Standby servers that have only been running earlier releases are not
+ at risk. It's recommended that standby servers that have ever run any
+ of the buggy releases be re-cloned from the primary (e.g., with a new
+ base backup) after upgrading.
+
+
+
+
+
+
+ Fix bugs in setting the visibility-map bit for an empty page (Andres
+ Freund)
+
+
+
+
+
+
+ Fix multiple bugs in update chain traversal (Andres
+ Freund, Álvaro Herrera)
+
+
+
+
+
+
+ Fix dangling-pointer problem in fast-path locking (Tom Lane)
+
+
+ This could lead to corruption of the lock data structures in shared
+ memory, causing lock already held> and other odd errors.
+
+
+
+
+
+
+ Fix assorted race conditions in timeout management (Tom Lane)
+
+
+ These errors could result in a server process becoming unresponsive
+ because it had blocked SIGALRM and/or SIGINT.
+
+
+
+
+
+
+ Truncate pg_multixact> contents during crash recovery
+ (Andres Freund)
+
+
+ This avoids ever-increasing disk space consumption in hot standby
+ mode.
+
+
+
+
+
+
+ Fix race condition in GIN index posting tree page deletion (Heikki
+ Linnakangas)
+
+
+ This could lead to transient wrong answers or query failures.
+
+
+
+
+
+
+ Fix unexpected spgdoinsert() failure> error during SP-GiST
+ index creation (Teodor Sigaev)
+
+
+
+
+
+
+ Fix assorted bugs in materialized views (Kevin Grittner, Andres Freund)
+
+
+
+
+
+
+ Re-allow duplicate table aliases if they're within aliased JOINs
+ (Tom Lane)
+
+
+ Historically
PostgreSQL> has accepted queries like
+SELECT ... FROM tab1 x CROSS JOIN (tab2 x CROSS JOIN tab3 y) z
+
+ although a strict reading of the SQL standard would forbid the
+ duplicate usage of table alias x>. A misguided change in
+ 9.3.0 caused it to reject some such cases that were formerly accepted.
+ Restore the previous behavior.
+
+
+
+
+
+
+ Avoid flattening a subquery whose SELECT> list contains a
+ volatile function wrapped inside a sub-SELECT> (Tom Lane)
+
+
+ This avoids unexpected results due to extra evaluations of the
+ volatile function.
+
+
+
+
+
+
+ Fix planner's processing of non-simple-variable subquery outputs
+ nested within outer joins (Tom Lane)
+
+
+ This error could lead to incorrect plans for queries involving
+ multiple levels of subqueries within JOIN> syntax.
+
+
+
+
+
+
+ Fix incorrect planning in cases where the same non-strict expression
+ appears in multiple WHERE> and outer JOIN>
+ equality clauses (Tom Lane)
+
+
+
+
+
+
+ Fix planner crash with whole-row reference to a subquery (Tom Lane)
+
+
+
+
+
+
+ Fix incorrect generation of optimized MIN()/MAX() plans for
+ inheritance trees (Tom Lane)
+
+
+ The planner could fail in cases where the MIN()/MAX() argument was an
+ expression rather than a simple variable.
+
+
+
+
+
+
+ Fix premature deletion of temporary files (Andres Freund)
+
+
+
+
+
+
+ Prevent intra-transaction memory leak when printing range values
+ (Tom Lane)
+
+
+ This fix actually cures transient memory leaks in any datatype output
+ function, but range types are the only ones known to have had a
+ significant problem.
+
+
+
+
+
+
+ Fix memory leaks when reloading configuration files (Heikki
+ Linnakangas, Hari Babu)
+
+
+
+
+
+
+ Prevent incorrect display of dropped columns in NOT NULL and CHECK
+ constraint violation messages (Michael Paquier and Tom Lane)
+
+
+
+
+
+
+ Allow default arguments and named-argument notation for window
+ functions (Tom Lane)
+
+
+ Previously, these cases were likely to crash.
+
+
+
+
+
+
+ Suppress trailing whitespace on each line when pretty-printing rules
+ and views (Tom Lane)
+
+
+ 9.3.0 generated such whitespace in many more cases than previous
+ versions did. To reduce unexpected behavioral changes, suppress
+ unnecessary whitespace in all cases.
+
+
+
+
+
+
+ Fix possible read past end of memory in rule printing (Peter Eisentraut)
+
+
+
+
+
+
+ Fix array slicing of int2vector> and oidvector> values
+ (Tom Lane)
+
+
+ Expressions of this kind are now implicitly promoted to
+ regular int2> or oid> arrays.
+
+
+
+
+
+
+ Return a valid JSON value when converting an empty hstore> value
+ to json>
+ (Oskari Saarenmaa)
+
+
+
+
+
+
+ Fix incorrect behaviors when using a SQL-standard, simple GMT offset
+ timezone (Tom Lane)
+
+
+ In some cases, the system would use the simple GMT offset value when
+ it should have used the regular timezone setting that had prevailed
+ before the simple offset was selected. This change also causes
+ the timeofday> function to honor the simple GMT offset
+ zone.
+
+
+
+
+
+
+ Prevent possible misbehavior when logging translations of Windows
+ error codes (Tom Lane)
+
+
+
+
+
+
+ Properly quote generated command lines in
pg_ctl>
+ (Naoya Anzai and Tom Lane)
+
+
+ This fix applies only to Windows.
+
+
+
+
+
+
+ Fix
pg_dumpall> to work when a source database
+ sets
+ linkend="guc-default-transaction-read-only">default_transaction_read_only>
+ via ALTER DATABASE SET> (Kevin Grittner)
+
+
+ Previously, the generated script would fail during restore.
+
+
+
+
+
+
+ Fix
pg_isready> to handle its -d> option
+ properly (Fabrízio de Royes Mello and Fujii Masao)
+
+
+
+
+
+
+ Report out-of-disk-space failures properly
+ in
pg_upgrade> (Peter Eisentraut)
+
+
+
+
+
+
+ Make
ecpg> search for quoted cursor names
+ case-sensitively (Zoltán Böszörményi)
+
+
+
+
+
+
+ Fix
ecpg>'s processing of lists of variables
+ declared varchar> (Zoltán Böszörményi)
+
+
+
+
+
+
+ Make contrib/lo> defend against incorrect trigger definitions
+ (Marc Cousin)
+
+
+
+
+
+
+ Update time zone data files to
tzdata> release 2013h
+ for DST law changes in Argentina, Brazil, Jordan, Libya,
+ Liechtenstein, Morocco, and Palestine. Also, new timezone
+ abbreviations WIB, WIT, WITA for Indonesia.
+
+
+
+
+
+
+
+
Release 9.3.1