<!-- See header comment in release.sgml about typical markup -->
<sect1 id="release-9-4">
<title>Release 9.4</title>
<note>
<title>Release Date</title>
<simpara>2014-??-??</simpara>
<simpara>Current as of 2014-05-03</simpara>
</note>
<sect2>
<title>Overview</title>
<para>
Major enhancements in <productname>PostgreSQL</> 9.4 include:
</para>
<!-- This list duplicates items below, but without authors or details-->
<itemizedlist>
<listitem>
<para>
</para>
</listitem>
</itemizedlist>
<para>
The above items are explained in more detail in the sections below.
</para>
</sect2>
<sect2>
<title>Migration to Version 9.4</title>
<para>
A dump/restore using <link
linkend="APP-PG-DUMPALL"><application>pg_dumpall</></link>, or use
of <link linkend="pgupgrade"><application>pg_upgrade</></link>, is
required for those wishing to migrate data from any previous release.
</para>
<para>
Version 9.4 contains a number of changes that may affect compatibility
with previous releases. Observe the following incompatibilities:
</para>
<itemizedlist>
<listitem>
<para>
Cause consecutive whitespace in to_timestamp() and to_date() format strings to consume a corresponding number of characters in the input
string (whitespace or not), then conditionally additional adjacent whitespace if not in FX mode (Jeevan Chalke)
</para>
<para>
Previously consecutive whitespace characters in a non-FX format string behaved like a single whitespace character and consumed all
adjacent whitespace in the input string. For example, previously format string space-space-space would consume only the first space in ' 12', while it will not consume all three characters.
</para>
</listitem>
<listitem>
<para>
Tighten checks for multi-dimensional array input (Bruce Momjian)
</para>
<para>
Previously an input array string that started with a single-element array dimension could later contain multi-dimensional
segments.
</para>
</listitem>
<listitem>
<para>
Change empty arrays returned by intarray to be zero-dimensional arrays (Bruce Momjian)
</para>
<para>
Previously empty arrays were returned as one-dimensional empty arrays whose text representation looks the same as
zero-dimensional arrays. intarray's behavior in this area now matches the built-in array operators.
</para>
</listitem>
<listitem>
<para>
NULL VARIADIC function arguments are now disallowed (Pavel Stehule)
</para>
<para>
NULL VARIADIC arguments must be cast to an array data type.
</para>
</listitem>
<listitem>
<para>
SHOW TIME ZONE now outputs constant time zone offsets in POSIX-style zone format (Tom Lane)
</para>
<para>
Previously it was returned in INTERVAL format. The new format can be passed to SET TIME ZONE.