diff --git a/doc/src/sgml/release-9.5.sgml b/doc/src/sgml/release-9.5.sgml
index ffb2f5d7b6e..a010ffcd0f2 100644
--- a/doc/src/sgml/release-9.5.sgml
+++ b/doc/src/sgml/release-9.5.sgml
@@ -54,75 +54,90 @@
- Adjust operator precedence>
+ Adjust operator precedence>
to match the SQL> standard (Tom Lane)
- "<" and ">" now have the same precedence as "<="
- ">=" and "<>", and IS> now has lower
- precedence. NOT> now also has symmetric precedence.
- The GUC> operator_precedence_warning> can be
- enabled to warn about queries where the precedence has changed.
+ The precedence of <=, >=
+ and <> has been reduced to match that of
+ <, >
+ and =. The precedence of IS> tests
+ (e.g., x> IS NULL>) has been reduced to be
+ just below these six comparison operators.
+ Also, multi-keyword operators beginning with NOT> now have
+ the precedence of their base operator (for example, NOT
+ BETWEEN> now has the same precedence as BETWEEN>) whereas
+ before they had inconsistent precedence, behaving like NOT>
+ with respect to their left operand but like their base operator with
+ respect to their right operand. The new configuration
+ parameter can be
+ enabled to warn about queries in which these precedence changes result
+ in different parsing choices.
- Use cast conversions for PL/pgSQL> type conversions,
- rather than converting to and from text (Tom Lane)
+ Use assignment cast behavior for data type conversions
+ in PL/pgSQL> assignments, rather than converting to and
+ from text (Tom Lane)
- This causes conversions of booleans to strings to
- return true> or false>, not
- t>/f>.
+ This change causes conversions of booleans to strings to
+ produce true> or false>, not t>
+ or f>. Other type conversions may succeed in more cases
+ than before; for example, assigning a numeric value 3.9> to
+ an integer variable will now assign 4 rather than failing. If no
+ assignment-grade cast is defined for the particular source and
+ destination types, PL/pgSQL> will fall back to its old
+ I/O conversion behavior.
- Allow special characters in server
- startup option values> to be escaped with a backslash (Andres
- Freund)
+ Allow characters in server
+ command-line options> to be escaped with a backslash (Andres Freund)
- This allows characters like spaces to be passed inside option values.
- Passing a backslash now requires supplying a double-backslash.
+ Formerly, spaces in the options string always separated options, so
+ there was no way to include a space in an option value. Including
+ a backslash in an option value now requires writing \\>.
- Set the default value of include_realm>> to not remove
- the GSS> and SSPI> realm from the principal
- (Stephen Frost)
+ Change the default value of include_realm>> to 1, so that
+ by default the realm is not removed from a GSS>
+ or SSPI> principal name (Stephen Frost)
- Fix REASSIGN>>
- and ALTER OWNER TO>>
- to properly reassign ownership of types, foreign data wrappers,
- and foreign servers (Bruce Momjian)
+ Fix REASSIGN OWNED>>
+ and ALTER OWNER TO>>
+ to properly update permissions lists (ACLs) when changing ownership of
+ types, foreign data wrappers, and foreign servers (Bruce Momjian)
- Remove server-side GUC> autocommit>, which
+ Remove server configuration parameter autocommit>, which
was already deprecated and non-operational (Tom Lane)
- Remove pg_authid>.rolcatupdate>>,
- as it had no purpose (Adam Brightwell)
+ Remove pg_authid>>'s
+ rolcatupdate> field, as it had no value (Adam Brightwell)
@@ -134,9 +149,9 @@
Changes
- Below you will find a detailed account of the changes between
+ Below you will find a detailed account of the changes between
PostgreSQL 9.5 and the previous major
- release.
+ release.
@@ -184,22 +199,21 @@
- Add GUC> gin_pending_list_limit>>
+ Add configuration parameter
to control the size of GIN> pending lists (Fujii Masao)
- Previously this was controlled by work_mem>>. This can also
- be set as an index storage parameter.
+ Previously the list size was controlled
+ by . This can also be set as an index
+ storage parameter.
Issue a warning during the creation of hash> indexes because they are not
+ linkend="indexes-types">hash> indexes because they are not
crash-safe (Bruce Momjian)
@@ -237,8 +251,8 @@
- Improve concurrency of shared
- buffer> replacement (Robert Haas, Amit Kapila)
+ Improve concurrency of shared buffer replacement
+ (Robert Haas, Amit Kapila)
@@ -269,11 +283,6 @@
Speed up CRC> (cyclic redundancy check) computations
(Abhijit Menon-Sen, Heikki Linnakangas)
-
-
- Also use CPU> instructions for CRC>
- calculations, if supported
-
@@ -298,25 +307,23 @@
- Add GUC> variable cluster_name>> (Thomas
- Munro)
+ Add new configuration parameter
+ (Thomas Munro)
- This string, set in postgresql.conf>>,
- allows clients to query the cluster name. This name also appears
- in the process title, allowing for easier grouping of processes
- belonging to the same cluster.
+ allows clients to identify the cluster. This name also appears
+ in the process title of all server processes, allowing for easier
+ identification of processes belonging to the same cluster.
- Prevent non-superusers from changing log_disconnections>>
- on connection startup (Fujii Masao)
+ Prevent non-superusers from changing on connection startup (Fujii Masao)
@@ -337,7 +344,7 @@
- Their presence replaces checks against the certificate's
+ When they are present, this replaces checks against the certificate's
Common Name>.
@@ -359,7 +366,7 @@
While PQgetssl()>>
- can still be used to then call OpenSSL>
+ can still be used to call OpenSSL>
functions, PQsslAttribute()> returns SSL>
information in an SSL>-implementation-independent way.
(Future versions of libpq might support other SSL>
@@ -369,7 +376,7 @@
- Have libpq> honor any OpenSSL>
+ Make libpq> honor any OpenSSL>
thread callbacks (Jan Urbanski)
@@ -389,10 +396,9 @@
- Replace checkpoint_segments> with min_wal_size>> and
- max_wal_size>>
- (Heikki Linnakangas)
+ Replace configuration parameter checkpoint_segments>
+ with
+ and (Heikki Linnakangas)
@@ -403,18 +409,17 @@
- Add GUC> wal_compression>> to
- enable compression of full page images stored in WAL>
+ Add configuration parameter to
+ control compression of full page images stored in WAL>
(Rahila Syed, Michael Paquier)
- Allow the recording of transaction
- commit timestamps when GUC> track_commit_timestamp>>
+ Allow recording of transaction
+ commit timestamps when configuration parameter
is enabled (Álvaro Herrera, Petr Jelínek)
@@ -427,10 +432,8 @@
- Allow local_preload_libraries>>
- to be set by ALTER ROLE SET> (Peter Eisentraut,
- Kyotaro Horiguchi)
+ Allow to be set
+ by ALTER ROLE SET> (Peter Eisentraut, Kyotaro Horiguchi)
@@ -443,24 +446,22 @@
- Make GUC> debug_assertions>>
+ Make configuration parameter
read-only (Andres Freund)
This means that assertions can no longer be turned
- off once enabled at compile-time, allowing for more
- efficient code optimization. This also removed the postgres>
- Allow setting effective_io_concurrency>>
- on systems where it has no effect (Peter Eisentraut)
+ Allow setting on
+ systems where it has no effect (Peter Eisentraut)
@@ -470,12 +471,12 @@
linkend="linux-memory-overcommit">PG_OOM_ADJUST_FILE>>
and PG_OOM_ADJUST_VALUE>>
- to control Linux OOM> killer (Gurjeet Singh)
+ to help control the Linux OOM> killer (Gurjeet Singh)
- The previous OOM> control involved a compile-time
- option.
+ The previous OOM> control infrastructure involved a
+ compile-time option.
@@ -528,15 +529,13 @@
- GUC> pause_at_recovery_target> was also
- removed.
+ This replaces the old parameter pause_at_recovery_target>.
-
- Add archive_mode>>
+ Add new value
always> to allow standbys to always archive received
WAL> files (Fujii Masao)
@@ -544,10 +543,10 @@
- Add GUC> wal_retrieve_retry_interval>>
- to control WAL> read retry after failure (Alexey
- Vasiliev, Michael Paquier)
+ Add configuration
+ parameter to
+ control WAL> read retry after failure
+ (Alexey Vasiliev, Michael Paquier)
@@ -564,23 +563,22 @@
- Add GUC> log_replication_commands>>
+ Add configuration parameter
to log replication commands (Fujii Masao)
By default, replication commands, e.g. IDENTIFY_SYSTEM>>,
- are not logged, even when log_statement>> is set
+ are not logged, even when is set
to all>.
- Allow the labeling>
+ Allow labeling>
of the origin of logical replication changes (Andres Freund)
@@ -591,7 +589,7 @@
- Report the backends holding replication slots in pg_replication_slots>>
(Craig Ringer)
@@ -896,10 +894,8 @@
- This allows the creation of local foreign tables definitions
- that match the remote table structure. Currently, only the
- postgres_fdw>>
- foreign data wrapper supports this feature.
+ This command allows automatic creation of local foreign tables
+ that match the structure of existing tables on a remote server.
@@ -922,9 +918,11 @@
- These checks are assumed to be enforced on the remote server,
- and are not checked locally. However, they are considered for
- optimization and constraint-exclusion checking.
+ These constraints are assumed to be enforced on the remote server,
+ and are not enforced locally. However, they are assumed to hold for
+ purposes of query optimization, such
+ as constraint
+ exclusion>.
@@ -946,9 +944,8 @@
- Add pg_event_trigger_ddl_commands>>
- set-returning function, which returns DDL> activity
+ Add a set-returning function pg_event_trigger_ddl_commands()>>, which returns DDL> activity
associated with event triggers (Álvaro Herrera)
@@ -1015,8 +1012,8 @@
- Previously the namespace was not returned, leading to invalid
- XML>.
+ Previously the namespace was not returned, potentially leading to
+ invalid XML>.
@@ -1029,7 +1026,7 @@
- Tighten specification of INTERVAL>> precision
specifications (Bruce Momjian)
@@ -1061,19 +1058,19 @@
Add JSONB> functions jsonb_set()>>
and jsonb_pretty>>
+ linkend="functions-json-processing-table">jsonb_pretty()>>
(Dmitry Dolgov, Andrew Dunstan, Petr Jelínek)
- Add several generator functions for JSONB> that exist
- for JSON> (Andrew Dunstan)
+ Add several generator functions for JSONB> that already
+ existed for JSON> (Andrew Dunstan)
- The functions are to_jsonb()>>,
jsonb_object()>>,
@@ -1182,10 +1179,10 @@
- Add width_bucket()>>
- which supports any sortable data type and non-uniform bucket widths
- (Petr Jelínek)
+ variant that supports any sortable data type and non-uniform bucket
+ widths (Petr Jelínek)
@@ -1196,9 +1193,10 @@
- User-defined =>> operators have been issuing
- warnings since Postgres 9.0, and were removed in hstore in 9.2.
- Previously only :=> could be used.
+ Previously only :=> could be used. This requires removing
+ the possibility for =>> to be a user-defined operator.
+ Creation of user-defined =>> operators has been issuing
+ warnings since Postgres 9.0.
@@ -1236,18 +1234,18 @@
- Loosen security checks for viewing pg_stat_activity>>,
- pg_cancel_backend()>>,
- and pg_terminate_backend>>
+ and executing pg_terminate_backend()>>
(Stephen Frost)
- Now, role membership is sufficient; previously only the same
- role could perform such operations.
+ Now, role membership is sufficient; previously only the same
+ role could perform these operations.
@@ -1347,17 +1345,17 @@
- Add specification of conversion routines to/from SQL>
- data types to procedural languages data types (Peter Eisentraut)
+ Allow specification of conversion routines between SQL>
+ data types and data types of procedural languages (Peter Eisentraut)
- This adds new commands CREATE>>/DROP TRANSFORM>>.
- This also adds transformations between hstore>> and ltree>> to/from ltree>> types to/from PL/Perl>> and PL/Python>>.
@@ -1413,6 +1411,14 @@
+
+
+ Add pg_rewind>>,
+ which allows re-synchronizing a master server after failback
+ (Heikki Linnakangas)
+
+
+
Allow
- Have pg_basebackup>> use
- a tablespace mapping file with the tar> format,
- to handle file paths of 100+ characters in length and sybolic
- links on MS Windows> (Amit Kapila)
+ Make pg_basebackup>>
+ use a tablespace mapping file when using tar> format,
+ to support symbolic links and file paths of 100+ characters in length
+ on MS Windows> (Amit Kapila)
+
+
+
+
+
+ Add pg_xlogdump>> option
+
@@ -1515,7 +1527,7 @@
Add psql> setting pager_min_lines>>
- setting to control pager invocation (Andrew Dunstan)
+ to control pager invocation (Andrew Dunstan)
@@ -1529,7 +1541,7 @@
Add psql> tab completion when setting the
- search_path> variable (Jeff Janes)
+ variable (Jeff Janes)
@@ -1539,7 +1551,7 @@
- Improve psql> tab-completion for triggers and rules
+ Improve psql>'s tab completion for triggers and rules
(Andreas Karlsson)
@@ -1581,7 +1593,7 @@
- Allow psql> \watch> to output
+ Allow psql>'s \watch> to output
\timing> information (Fujii Masao)
@@ -1608,8 +1620,8 @@
- Allow tab completion of psql> \c>
- role names (Ian Barwick)
+ Allow tab completion of role names
+ in psql> \c> commands (Ian Barwick)
@@ -1662,7 +1674,7 @@
- Change pg_ctl> default shutdown mode from
+ Change pg_ctl>'s default shutdown mode from
smart> to fast> (Bruce Momjian)
@@ -1740,6 +1752,47 @@
+
+
+
+
+
+
+
+ Move pgbench from contrib> to src/bin>
+ (Peter Eisentraut)
+
+
+
+
+
+ Allow counting of pgbench transactions that take over a specified
+ amount of time (Fabien Coelho)
+
+
+
+ This is controlled by new
+
+
+
+
+ Allow pgbench to generate Gaussian/exponential distributions
+ using \setrandom> (Kondo Mitsumasa, Fabien Coelho)
+
+
+
+
+
+ Allow pgbench>'s \set> command to handle
+ multi-operator expressions (Robert Haas, Fabien Coelho)
+
+
+
+
+
+
+
@@ -1797,7 +1850,8 @@
- Improve dynahash capabilities (Teodor Sigaev, Tom Lane)
+ Improve hash_create()>'s API for selecting
+ simple-binary-key hash functions (Teodor Sigaev, Tom Lane)
@@ -1841,15 +1895,16 @@
- Change columns pg_seclabel>>.provider>
and pg_shseclabel>>.provider>
- to TEXT> (Tom Lane)
+ linkend="catalog-pg-shseclabel">pg_shseclabel>>.provider>
+ to be text_pattern_ops> (Tom Lane)
- This allows these columns to store 64+ characters.
+ This avoids possible problems with these indexes when different
+ databases of a cluster have different default collations.
@@ -1933,14 +1988,6 @@
-
-
- Add pg_rewind>>,
- which allows re-synchronizing a master server after failback
- (Heikki Linnakangas)
-
-
-
Add statistics for minimum, maximum,
@@ -1994,14 +2041,7 @@
- Add pg_xlogdump>> option
-
-
-
-
-
- Allow GIN>>
+ Add GIN>>
index inspection functions to pageinspect>> (Heikki
Linnakangas, Peter Geoghegan, Michael Paquier)
@@ -2031,51 +2071,15 @@
from contrib> to src/test/modules>
(Álvaro Herrera)
+
+
+ These modules are only meant for server testing, so they do not need
+ to be built or installed when packaging PostgreSQL>.
+
-
-
-
-
-
-
-
- Move pgbench from contrib> to src/bin>
- (Peter Eisentraut)
-
-
-
-
-
- Allow counting of pgbench transactions that take over a specified
- amount of time (Fabien Coelho)
-
-
-
- This is controlled by new
-
-
-
-
- Allow pgbench to generate Gaussian/exponential distributions
- using \setrandom> (Kondo Mitsumasa, Fabien Coelho)
-
-
-
-
-
- Allow pgbench>'s \set> command to handle
- multi-operator expressions (Robert Haas, Fabien Coelho)
-
-
-
-
-
-
-