+ Allow multi-column
+ linkend="SQL-UPDATE">UPDATE>>s with a single subselect
(Tom Lane)
- Add new <command>SELECT> option SKIP LOCKED> to skip
- locked rows (Thomas Munro)
+ Add new <link linkend="SQL-SELECT">SELECT>> option
+ SKIP LOCKED> to skip locked rows (Thomas Munro)
- Add SELECT> option TABLESAMPLE> to return
- a subset of a table (Petr Jelinek)
+ Add SELECT>> option
+ TABLESAMPLE> to return a subset of a table (Petr
+ Jelinek)
- Add more details about sort ordering in EXPLAIN> output
- (Marius Timmer, Lukas Kreft, Arne Scheffer)
+ Add more details about sort ordering in
+ linkend="SQL-EXPLAIN">EXPLAIN>> output (Marius Timmer,
+ Lukas Kreft, Arne Scheffer)
- Have <command>VACUUM> log the number of pages skipped due to pins
- (Jim Nasby)
+ Have <link linkend="SQL-VACUUM">VACUUM>> log the
+ number of pages skipped due to pins (Jim Nasby)
- Have <command>TRUNCATE> properly update the pg_stat>*
- tuple counters (Alexander Shulgin)
+ Have <link linkend="SQL-TRUNCATE">TRUNCATE>> properly
+ update the pg_stat>* tuple counters (Alexander Shulgin)
This controls viewing and adding/modifying rows via new commands
- CREATE>/ALTER>/DROP POLICY>
- and ALTER TABLE ... ENABLE/DISABLE ROW SECURITY>.
+
CREATE>>/
+ linkend="SQL-ALTERPOLICY">
ALTER>>/
+ linkend="SQL-DROPPOLICY">
DROP POLICY>> and
+ linkend="SQL-ALTERTABLE">ALTER TABLE ... ENABLE/DISABLE
+ ROW SECURITY>>.
- Allow control of table
WAL> logging after table
- creation with ALTER TABLE .. SET LOGGED / UNLOGGED>
- (Fabrízio de Royes Mello)
+ Allow control of table
WAL> logging after table creation
+ with ALTER TABLE .. SET
+ LOGGED / UNLOGGED>> (Fabrízio de Royes Mello)
- Add IF NOT EXISTS> clause to CREATE TABLE
- AS>, CREATE INDEX>, CREATE SEQUENCE>,
- and CREATE MATERIALIZED VIEW> (Fabrízio de
- Royes Mello)
+ Add
IF NOT EXISTS> clause to
+ linkend="SQL-CREATETABLEAS">CREATE TABLE AS>>,
+ CREATE INDEX>>,
+ CREATE SEQUENCE>>,
+ and CREATE
+ MATERIALIZED VIEW>> (Fabrízio de Royes Mello)
- Add support for IF EXISTS> to ALTER TABLE
- ... RENAME CONSTRAINT> (Bruce Momjian)
+ Add support for
IF EXISTS> to
+ linkend="SQL-ALTERTABLE">ALTER TABLE ... RENAME
+ CONSTRAINT>> (Bruce Momjian)
- Commands include ALTER USER>, ALTER
- GROUP>, ALTER ROLE>, GRANT>, and various
- ALTER OBJECT / OWNER TO> commands.
+ Commands include ALTER
+ USER>>,
+ ALTER
+ GROUP>>, ALTER
+ ROLE>>, GRANT>>,
+ and various ALTER OBJECT / OWNER TO> commands.
- Allow comments on domain constraints (Álvaro Herrera)
+ Allow comments on domain
+ constraints> (Álvaro Herrera)
- Allow LOCK TABLE .. ROW EXCLUSIVE MODE> for those with
- INSERT> privileges (Stephen Frost)
+ Allow LOCK TABLE .. ROW EXCLUSIVE
+ MODE>> for those with INSERT> privileges (Stephen
+ Frost)
- Allow CREATE>/ALTER DATABASE> to manipulate
- datistemplate> and datallowconn>
- (Vik Fearing)
+ Allow
+ linkend="SQL-CREATEDATABASE">
CREATE>>/
+ linkend="SQL-ALTERDATABASE">ALTER DATABASE>>
+ to manipulate datistemplate> and
+ datallowconn> (Vik Fearing)
- This allows these database settings to be changed more easily
- than modifying the pg_database> system table.
+ This allows these database settings to be
+ changed more easily than modifying the
+ linkend="catalog-pg-database">pg_database>>
+ system table.
- Have CREATE TABLE AS> and REFRESH> return
- an OID> (Álvaro Herrera)
+ Have CREATE
+ TABLE AS>> and
+ linkend="SQL-REFRESHMATERIALIZEDVIEW">REFRESH>>
+ return an OID> (Álvaro Herrera)
- Add support for IMPORT FOREIGN SCHEMA> (Ronan Dunklau,
- Michael Paquier, Tom Lane)
+ Add support for
+ linkend="SQL-IMPORTFOREIGNSCHEMA">IMPORT FOREIGN
+ SCHEMA>> (Ronan Dunklau, Michael Paquier, Tom Lane)
This allows the creation of local foreign tables definitions
that match the remote table structure. Currently, only the
- <application>postgres_fdw> foreign data wrapper supports this
- feature.
+ <
link linkend="postgres-fdw">postgres_fdw>>
+ foreign data wrapper supports this feature.
- Add pg_event_trigger_ddl_commands> set-returning
- function, which returns
DDL> activity associated with
- event triggers (Álvaro Herrera)
+ Add
+ linkend="pg-event-trigger-ddl-command-end-functions">pg_event_trigger_ddl_commands>>
+ set-returning function, which returns
DDL> activity
+ associated with event triggers (Álvaro Herrera)
- Allow event triggers on table rewrites caused by ALTER
- TABLE> (Dimitri Fontaine)
+ Allow event triggers on table rewrites caused by
+ linkend="SQL-ALTERTABLE">ALTER TABLE>> (Dimitri
+ Fontaine)
- Add event trigger support for database-level
- COMMENT>, SECURITY LABEL>, and
- GRANT>/REVOKE> (Álvaro Herrera)
+ Add event trigger support for database-level
+ linkend="SQL-COMMENT">
COMMENT>>,
+ linkend="SQL-SECURITY-LABEL">SECURITY LABEL>>,
+ and
GRANT>>/
+ linkend="SQL-REVOKE">REVOKE>> (Álvaro Herrera)
- Add columns to the output of
- pg_event_trigger_dropped_objects> (Álvaro
- Herrera)
+ Add columns to the output of
+ linkend="pg-event-trigger-sql-drop-functions">pg_event_trigger_dropped_objects>>
+ (Álvaro Herrera)
- Allow the <type>XML> data type to accept empty or all-whitespace
- values (Peter Eisentraut)
+ Allow the <link linkend="datatype-xml">XML>> data type
+ to accept empty or all-whitespace values (Peter Eisentraut)
- Fix XML> xpath handling to return namespace declarations
- even if the namespace is in a parent element (Ali Akbar)
+ Fix
XML>
+ linkend="functions-xml-processing">xpath()>> handling
+ to return namespace declarations even if the namespace is in a
+ parent element (Ali Akbar)
- Allow <type>macaddr> input using the format
- xxxx-xxxx-xxxx> (Herwin Weststrate)
+ Allow <link linkend="datatype-macaddr">MACADDR>> input
+ using the format xxxx-xxxx-xxxx> (Herwin Weststrate)
- Tighten specification of INTERVAL> precision specifications
- (Bruce Momjian)
+ Tighten specification of
+ linkend="datatype-interval-input">INTERVAL>> precision
+ specifications (Bruce Momjian)
- Add selectivity estimators for INET>/CIDR> operators
- and improve estimators for text search functions (Emre Hasegeli,
- Tom Lane)
+ Add selectivity estimators for
+ linkend="datatype-inet">
INET>>/
+ linkend="datatype-cidr">CIDR>> operators and improve
+ estimators for text search functions (Emre Hasegeli, Tom Lane)
- Add JSONB> functions jsonb_set()> and
- jsonb_pretty> (Dmitry Dolgov, Andrew Dunstan)
+ Add
JSONB> functions
+ linkend="functions-json-processing-table">jsonb_set()>>
+ and
+ linkend="functions-json-processing-table">jsonb_pretty>>
+ (Dmitry Dolgov, Andrew Dunstan)
- The functions are to_jsonb()>,
- jsonb_object()>, jsonb_build_object()>,
- jsonb_build_array()>, jsonb_agg()>,
- and jsonb_object_agg()>.
+ The functions are
+ linkend="functions-json-creation-table">to_jsonb()>>,
+
+ linkend="functions-json-creation-table">jsonb_object()>>,
+
+ linkend="functions-json-creation-table">jsonb_build_object()>>,
+
+ linkend="functions-json-creation-table">jsonb_build_array()>>,
+
+ linkend="functions-aggregate-table">jsonb_agg()>>,
+ and
+ linkend="functions-aggregate-table">jsonb_object_agg()>>.
- Reduce casting requirements to/from JSON> and
- JSONB> (Tom Lane)
+ Reduce casting requirements to/from
+ linkend="datatype-json">
JSON>> and
+ linkend="datatype-json">JSONB>> (Tom Lane)
Allow TEXT>, TEXT> array, and INTEGER>
- values to be subtracted from JSONB> documents (Dmitry
- Dolgov, Andrew Dunstan)
+ values to be subtracted>
+ from JSONB> documents (Dmitry Dolgov, Andrew Dunstan)
- Add JSONB> operator || (Dmitry Dolgov, Andrew Dunstan)
+ Add
JSONB>
+ linkend="functions-jsonb-op-table">operator> ||>
+ (Dmitry Dolgov, Andrew Dunstan)
- Add json_strip_nulls()> and
- jsonb_strip_nulls()> functions to remove JSON>
- null values from documents (Andrew Dunstan)
+ Add
+ linkend="functions-json-processing-table">json_strip_nulls()>>
+ and
+ linkend="functions-json-processing-table">jsonb_strip_nulls()>>
+ functions to remove JSON> null values from documents
+ (Andrew Dunstan)
- Add <function>generate_series()> for NUMERIC> values
- (Plato Malugin)
+ Add <link linkend="functions-srf">generate_series()>>
+ for NUMERIC> values (Plato Malugin)
- Allow array_agg()> and ARRAY()> to take
- arrays as inputs (Ali Akbar, Tom Lane)
+ Allow
+ linkend="functions-aggregate-table">array_agg()>> and
+ ARRAY()> to take arrays as inputs (Ali Akbar, Tom Lane)
- Add functions array_position()> and
- array_positions()> to return subscripts of array values
- (Pavel Stehule)
+ Add functions
+ linkend="array-functions-table">array_position()>>
+ and
+ linkend="array-functions-table">array_positions()>>
+ to return subscripts of array values (Pavel Stehule)
- Add point>-to-polygon> distance operator
- (<->) (Alexander Korotkov)
+ Add
+ linkend="gist-builtin-opclasses-table">point>-to-polygon>>
+ distance operator (<->) (Alexander Korotkov)
- Allow multi-byte characters as escape in SIMILAR TO>
- and SUBSTRING> (Jeff Davis)
+ Allow multi-byte characters as escape in
+ linkend="functions-similarto-regexp">SIMILAR TO>>
+ and SUBSTRING>>
+ (Jeff Davis)
- Add width_bucket()> which supports any sortable data
- type and non-uniform bucket widths (Petr Jelinek)
+ Add
+ linkend="functions-math-func-table">width_bucket()>>
+ which supports any sortable data type and non-uniform bucket widths
+ (Petr Jelinek)
- Allow => to specify named parameters in function calls
- (Pavel Stehule)
+ Allow =>>>
+ to specify named parameters in function calls (Pavel Stehule)
- User-defined => operators have been issuing warnings since
- Postgres 9.0, and were removed in hstore in 9.2. Previously only
- :=> could be used.
+ User-defined =>> operators have been issuing
+ warnings since Postgres 9.0, and were removed in hstore in 9.2.
+ Previously only :=> could be used.
- Add function pg_get_object_address()> to return
- OID>s that uniquely identify an object (Álvaro
- Herrera)
+ Add function
+ linkend="functions-info-object-table">pg_get_object_address()>>
+ to return OID>s that uniquely identify an object
+ (Álvaro Herrera)
- Add function pg_identify_object_as_address()> to return
- object information based on OID>s (Álvaro Herrera)
+ Add function
+ linkend="functions-info-object-table">pg_identify_object_as_address()>>
+ to return object information based on OID>s (Álvaro
+ Herrera)
- Loosen security checks for viewing pg_stat_activity>,
- pg_cancel_backend()>, and
- pg_terminate_backend> (Stephen Frost)
+ Loosen security checks for viewing
+ linkend="pg-stat-activity-view">pg_stat_activity>>,
+
+ linkend="functions-admin-signal-table">pg_cancel_backend()>>,
+ and
+ linkend="functions-admin-signal-table">pg_terminate_backend>>
+ (Stephen Frost)
- Add pg_stat_get_snapshot_timestamp()> to output the
- timestamp of the statistics snapshot (Matt Kelly)
+ Add
+ linkend="monitoring-stats-funcs-table">pg_stat_get_snapshot_timestamp()>>
+ to output the timestamp of the statistics snapshot (Matt Kelly)
- Add mxid_age()> to compute multi-xid age (Bruce
- Momjian)
+ Add
+ linkend="vacuum-for-multixact-wraparound">mxid_age()>>
+ to compute multi-xid age (Bruce Momjian)
- Add data type regrole> that returns the OID>
- of a role (Kyotaro Horiguchi)
+ Add data type
+ linkend="datatype-oid-table">regrole>> that returns
+ the OID> of a role (Kyotaro Horiguchi)
- Add data type regnamespace> that returns the OID>
- of a schema (Kyotaro Horiguchi)
+ Add data type
+ linkend="datatype-oid-table">regnamespace>> that returns
+ the OID> of a schema (Kyotaro Horiguchi)
- Add MIN()>/MAX()> aggregates for
- INET>/CIDR> data types (Haribabu Kommi)
+ Add MIN()>/MAX()> aggregates
+ for
INET>>/
+ linkend="datatype-cidr">CIDR>> data types (Haribabu
+ Kommi)
- Improve support for composite types in
PL/Python>
- (Ed Behn, Ronan Dunklau)
+ Improve support for composite types in
+ linkend="plpython">
PL/Python>> (Ed Behn, Ronan
+ Dunklau)
- Reduce lossiness of
PL/Python> floating value
+ Reduce lossiness of
+ linkend="plpython">
PL/Python>> floating value
conversions (Marko Kreen)
- This adds new commands CREATE>/DROP
- TRANSFORM>. This also adds transformations between
-
hstore> and ltree> to/from
-
PL/Perl> and PL/Python>.
+ This adds new commands
+ linkend="SQL-CREATETRANSFORM">
CREATE>>/
+ linkend="SQL-DROPTRANSFORM">DROP TRANSFORM>>.
+ This also adds transformations between
+ linkend="hstore">
hstore>> and
+ linkend="ltree">
ltree>> to/from
+ linkend="plperl">
PL/Perl>> and
+ linkend="plpython">
PL/Python>>.
- Improve
PL/pgSQL> array performance (Tom Lane)
+ Improve
PL/pgSQL>> array
+ performance (Tom Lane)
- Add <
command>ASSERT> statement in PL/pgSQL>
- (Pavel Stehule)
+ Add <link linkend="plpgsql-statements-assert">ASSERT>>
+
statement in PL/pgSQL> (Pavel Stehule)
- Allow more <application>PL/pgSQL> keywords to be used as
- identifiers (Tom Lane)
+ Allow more <
link linkend="plpgsql">PL/pgSQL>>
+ keywords to be used as identifiers (Tom Lane)
- Move
pg_archivecleanup>,
-
pg_test_fsync>, pg_test_timing>,
- and
pg_xlogdump> from contrib> to
- src/bin> (Peter Eisentraut)
+ Move
+ linkend="pgarchivecleanup">
pg_archivecleanup>>,
+ from contrib> to src/bin> (Peter Eisentraut)
- Allow
pg_receivexlog> to manage physical replication
- slots (Michael Paquier)
+ Allow
+ linkend="app-pgreceivexlog">
pg_receivexlog>>
+ to manage physical replication slots (Michael Paquier)
- Allow the
pg_receivexlog> to synchronously flush
-
WAL> to storage using
- Osamu, Fujii Masao)
+ Allow the
+ linkend="app-pgreceivexlog">
pg_receivexlog>>
+ to synchronously flush
WAL> to storage using
+
- Allow <command>vacuumdb> to vacuum in parallel using
-
+ Allow <link linkend="APP-VACUUMDB">vacuumdb>> to
+ vacuum in parallel using
- Add
- (Sawada Masahiko)
+ Add