|
6 | 6 |
|
7 | 7 | <formalpara>
|
8 | 8 | <title>Release date:</title>
|
9 |
| - <para>2019-??-?? AS OF 2019-05-09</para> |
| 9 | + <para>2019-??-??, CURRENT AS OF 2019-09-06</para> |
10 | 10 | </formalpara>
|
11 | 11 |
|
12 | 12 | <sect2>
|
|
21 | 21 | <itemizedlist>
|
22 | 22 |
|
23 | 23 | <listitem>
|
24 |
| - <para>big item</para> |
| 24 | + <para> |
| 25 | + General performance improvements, including: |
| 26 | + <itemizedlist> |
| 27 | + <listitem> |
| 28 | + <para> |
| 29 | + Optimizations to space utilization and read/write performance for |
| 30 | + B-tree indexes |
| 31 | + </para> |
| 32 | + </listitem> |
| 33 | + |
| 34 | + <listitem> |
| 35 | + <para> |
| 36 | + Partitioning performance enhancements, including improved query |
| 37 | + performance on tables with thousands of partitions, improved |
| 38 | + insertion performance with <xref linkend="sql-insert"/> and |
| 39 | + <xref linkend="sql-copy"/>, and the ability to |
| 40 | + execute <link linkend="sql-altertable"><command>ALTER TABLE ATTACH |
| 41 | + PARTITION</command></link> without blocking queries |
| 42 | + </para> |
| 43 | + </listitem> |
| 44 | + |
| 45 | + <listitem> |
| 46 | + <para> |
| 47 | + Automatic (but overridable) inlining |
| 48 | + of <link linkend="queries-with">common table expressions</link> |
| 49 | + (<acronym>CTEs</acronym>) |
| 50 | + </para> |
| 51 | + </listitem> |
| 52 | + |
| 53 | + <listitem> |
| 54 | + <para> |
| 55 | + Reduction of <acronym>WAL</acronym> overhead for updates of |
| 56 | + <link linkend="gist">GiST</link>, <link linkend="gin">GIN</link>, and |
| 57 | + <link linkend="spgist">SP-GiST</link> indexes |
| 58 | + </para> |
| 59 | + </listitem> |
| 60 | + |
| 61 | + <listitem> |
| 62 | + <para> |
| 63 | + Support for covering <link linkend="gist">GiST</link> indexes, via |
| 64 | + the <link linkend="sql-createindex"> <literal>INCLUDE</literal></link> |
| 65 | + clause |
| 66 | + </para> |
| 67 | + </listitem> |
| 68 | + |
| 69 | + <listitem> |
| 70 | + <para> |
| 71 | + Multi-column most-common-value (MCV) statistics can be defined |
| 72 | + via <xref linkend="sql-createstatistics"/>, to support better |
| 73 | + plans for queries that test several non-uniformly-distributed |
| 74 | + columns |
| 75 | + </para> |
| 76 | + </listitem> |
| 77 | + </itemizedlist> |
| 78 | + </para> |
| 79 | + </listitem> |
| 80 | + |
| 81 | + <listitem> |
| 82 | + <para> |
| 83 | + Enhancements to administrative functionality, including: |
| 84 | + <itemizedlist> |
| 85 | + <listitem> |
| 86 | + <para> |
| 87 | + <link linkend="sql-reindex"><command>REINDEX |
| 88 | + CONCURRENTLY</command></link> can rebuild an index without |
| 89 | + blocking writes to its table |
| 90 | + </para> |
| 91 | + </listitem> |
| 92 | + |
| 93 | + <listitem> |
| 94 | + <para> |
| 95 | + <xref linkend="app-pgchecksums"/> can enable/disable page checksums |
| 96 | + (used for detecting data corruption) in an offline cluster |
| 97 | + </para> |
| 98 | + </listitem> |
| 99 | + |
| 100 | + <listitem> |
| 101 | + <para> |
| 102 | + Progress reporting statistics for <xref linkend="sql-createindex"/>, |
| 103 | + <xref linkend="sql-reindex"/>, <xref linkend="sql-cluster"/>, |
| 104 | + <link linkend="sql-vacuum">VACUUM FULL</link>, and |
| 105 | + <xref linkend="app-pgchecksums"/> |
| 106 | + </para> |
| 107 | + </listitem> |
| 108 | + </itemizedlist> |
| 109 | + </para> |
| 110 | + </listitem> |
| 111 | + |
| 112 | + <listitem> |
| 113 | + <para> |
| 114 | + Support for the <acronym>SQL/JSON</acronym> |
| 115 | + <link linkend="functions-json-processing-table">path</link> language |
| 116 | + </para> |
| 117 | + </listitem> |
| 118 | + |
| 119 | + <listitem> |
| 120 | + <para> |
| 121 | + Stored <link linkend="sql-createtable">generated columns</link> |
| 122 | + </para> |
| 123 | + </listitem> |
| 124 | + |
| 125 | + <listitem> |
| 126 | + <para> |
| 127 | + Nondeterministic ICU |
| 128 | + <link linkend="sql-createcollation">collations</link>, enabling |
| 129 | + case-insensitive and accent-insensitive grouping and ordering |
| 130 | + </para> |
| 131 | + </listitem> |
| 132 | + |
| 133 | + <listitem> |
| 134 | + <para> |
| 135 | + New authentication features, including: |
| 136 | + <itemizedlist> |
| 137 | + <listitem> |
| 138 | + <para> |
| 139 | + Client- and server-side encryption for authentication using |
| 140 | + <link linkend="gssapi-auth"><acronym>GSSAPI</acronym></link> |
| 141 | + </para> |
| 142 | + </listitem> |
| 143 | + |
| 144 | + <listitem> |
| 145 | + <para> |
| 146 | + Discovery of LDAP servers if <productname>PostgreSQL</productname> is |
| 147 | + built with <productname>OpenLDAP</productname> |
| 148 | + </para> |
| 149 | + </listitem> |
| 150 | + |
| 151 | + <listitem> |
| 152 | + <para> |
| 153 | + Multi-factor authentication, using the <link linkend="auth-cert"> |
| 154 | + <literal>clientcert=verify-full</literal></link> option combined |
| 155 | + with an additional authentication method in |
| 156 | + <filename>pg_hba.conf</filename> |
| 157 | + </para> |
| 158 | + </listitem> |
| 159 | + </itemizedlist> |
| 160 | + </para> |
25 | 161 | </listitem>
|
26 | 162 |
|
27 | 163 | </itemizedlist>
|
@@ -183,7 +319,7 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
|
183 | 319 | <listitem>
|
184 | 320 | <!--
|
185 | 321 | Author: Tomas Vondra <tomas.vondra@postgresql.org>
|
186 |
| -2018-08-16 [c4c340088] Use the built-in float datatypes to implement geometric |
| 322 | +2018-08-16 [c4c340088] Use the built-in float datatypes to implement geometric |
187 | 323 | -->
|
188 | 324 |
|
189 | 325 | <para>
|
@@ -228,6 +364,26 @@ Author: Andrew Gierth <rhodiumtoad@postgresql.org>
|
228 | 364 | <listitem>
|
229 | 365 | <!--
|
230 | 366 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
| 367 | +2019-05-14 [7c850320d] Fix SQL-style substring() to have spec-compliant greedin |
| 368 | +--> |
| 369 | + |
| 370 | + <para> |
| 371 | + Change SQL-style <function>substring()</function> to have |
| 372 | + standard-compliant greediness behavior (Tom Lane) |
| 373 | + </para> |
| 374 | + |
| 375 | + <para> |
| 376 | + In cases where the pattern can be matched in more than one way, the |
| 377 | + initial sub-pattern is now treated as matching the least possible |
| 378 | + amount of text rather than the greatest; for example, a pattern such |
| 379 | + as <literal>%#"aa*#"%</literal> now selects the first group |
| 380 | + of <literal>a</literal>'s from the input, not the last group. |
| 381 | + </para> |
| 382 | + </listitem> |
| 383 | + |
| 384 | + <listitem> |
| 385 | +<!-- |
| 386 | +Author: Tom Lane <tgl@sss.pgh.pa.us> |
231 | 387 | 2019-04-23 [c06e3550d] Don't request pretty-printed output from xmlNodeDump().
|
232 | 388 | -->
|
233 | 389 |
|
@@ -299,8 +455,8 @@ This is caused by adding the tid to the btree entry, as listed later.
|
299 | 455 | -->
|
300 | 456 |
|
301 | 457 | <para>
|
302 |
| - The maximum btree index length is now reduced by eight bytes; |
303 |
| - a <xref linkend="sql-reindex"/> operation could potentially fail. |
| 458 | + The maximum btree index entry length is now reduced by eight bytes; |
| 459 | + thus a <xref linkend="sql-reindex"/> operation could potentially fail. |
304 | 460 | </para>
|
305 | 461 | </listitem>
|
306 | 462 |
|
@@ -347,6 +503,25 @@ Author: Tom Lane <tgl@sss.pgh.pa.us>
|
347 | 503 |
|
348 | 504 | <listitem>
|
349 | 505 | <!--
|
| 506 | +Author: Tomas Vondra <tomas.vondra@postgresql.org> |
| 507 | +2019-06-16 [6cbfb784c] Rework the pg_statistic_ext catalog |
| 508 | +2019-06-16 [aa087ec64] Add pg_stats_ext view for extended statistics |
| 509 | +--> |
| 510 | + |
| 511 | + <para> |
| 512 | + Split the <structname>pg_statistic_ext</structname> catalog into two |
| 513 | + catalogs, and add the <structname>pg_stats_ext</structname> view of |
| 514 | + it (Dean Rasheed, Tomas Vondra) |
| 515 | + </para> |
| 516 | + |
| 517 | + <para> |
| 518 | + This change supports hiding potentially-sensitive statistics data |
| 519 | + from unprivileged users. |
| 520 | + </para> |
| 521 | + </listitem> |
| 522 | + |
| 523 | + <listitem> |
| 524 | +<!-- |
350 | 525 | Author: Peter Eisentraut <peter_e@gmx.net>
|
351 | 526 | 2018-11-01 [96b00c433] Remove obsolete <structname>pg_constraint</structname>.consrc column
|
352 | 527 | -->
|
@@ -420,7 +595,7 @@ Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
420 | 595 | Author: Robert Haas <rhaas@postgresql.org>
|
421 | 596 | 2019-02-21 [9eefba181] Delay lock acquisition for partitions until we route a t
|
422 | 597 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
423 |
| -2019-03-30 [428b260f8] Speed up planning when partitions can be pruned at plan |
| 598 | +2019-03-30 [428b260f8] Speed up planning when partitions can be pruned at plan |
424 | 599 | -->
|
425 | 600 |
|
426 | 601 | <para>
|
@@ -492,7 +667,7 @@ Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
492 | 667 | <listitem>
|
493 | 668 | <!--
|
494 | 669 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
495 |
| -2019-04-05 [959d00e9d] Use Append rather than MergeAppend for scanning ordered |
| 670 | +2019-04-05 [959d00e9d] Use Append rather than MergeAppend for scanning ordered |
496 | 671 | -->
|
497 | 672 |
|
498 | 673 | <para>
|
@@ -658,7 +833,7 @@ see commits above
|
658 | 833 | <listitem>
|
659 | 834 | <!--
|
660 | 835 | Author: Alexander Korotkov <akorotkov@postgresql.org>
|
661 |
| -2018-07-28 [d2086b08b] Reduce path length for locking leaf B-tree pages during |
| 836 | +2018-07-28 [d2086b08b] Reduce path length for locking leaf B-tree pages during |
662 | 837 | -->
|
663 | 838 |
|
664 | 839 | <para>
|
@@ -711,7 +886,7 @@ Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
|
711 | 886 | <listitem>
|
712 | 887 | <!--
|
713 | 888 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
714 |
| -2019-03-03 [80b9e9c46] Improve performance of index-only scans with many index |
| 889 | +2019-03-03 [80b9e9c46] Improve performance of index-only scans with many index |
715 | 890 | -->
|
716 | 891 |
|
717 | 892 | <para>
|
@@ -789,7 +964,7 @@ Author: Tomas Vondra <tomas.vondra@postgresql.org>
|
789 | 964 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
790 | 965 | 2019-02-16 [608b167f9] Allow user control of CTE materialization, and change th
|
791 | 966 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
792 |
| -2019-04-09 [947613127] Prevent inlining of multiply-referenced CTEs with outer |
| 967 | +2019-04-09 [947613127] Prevent inlining of multiply-referenced CTEs with outer |
793 | 968 | -->
|
794 | 969 |
|
795 | 970 | <para>
|
@@ -1941,9 +2116,11 @@ Author: Peter Eisentraut <peter@eisentraut.org>
|
1941 | 2116 | </para>
|
1942 | 2117 |
|
1943 | 2118 | <para>
|
1944 |
| - This allows case and accent-agnostic equality comparisons using |
1945 |
| - "nondeterministic" collations. This is only supported for |
1946 |
| - <acronym>ICU</acronym> collations. MENTION ITS AFFECT ON ORDERING? |
| 2119 | + This feature supports <quote>nondeterministic</quote> collations |
| 2120 | + that can define case- and accent-agnostic equality comparisons. |
| 2121 | + Thus, for example, a case-insensitive uniqueness constraint on a |
| 2122 | + text column can be made more easily than before. This is only |
| 2123 | + supported for <acronym>ICU</acronym> collations. |
1947 | 2124 | </para>
|
1948 | 2125 | </listitem>
|
1949 | 2126 |
|
@@ -1972,6 +2149,8 @@ Author: Fujii Masao <fujii@postgresql.org>
|
1972 | 2149 | <!--
|
1973 | 2150 | Author: Robert Haas <rhaas@postgresql.org>
|
1974 | 2151 | 2019-04-04 [a96c41fee] Allow VACUUM to be run with index cleanup disabled.
|
| 2152 | +Author: Michael Paquier <michael@paquier.xyz> |
| 2153 | +2019-06-25 [ce59b75d4] Add toast-level reloption for vacuum_index_cleanup |
1975 | 2154 | -->
|
1976 | 2155 |
|
1977 | 2156 | <para>
|
@@ -2046,7 +2225,7 @@ Author: Andrew Gierth <rhodiumtoad@postgresql.org>
|
2046 | 2225 | <listitem>
|
2047 | 2226 | <!--
|
2048 | 2227 | Author: Peter Eisentraut <peter@eisentraut.org>
|
2049 |
| -2019-03-19 [590a87025] Ignore attempts to add TOAST table to shared or catalog |
| 2228 | +2019-03-19 [590a87025] Ignore attempts to add TOAST table to shared or catalog |
2050 | 2229 | -->
|
2051 | 2230 |
|
2052 | 2231 | <para>
|
@@ -2380,6 +2559,18 @@ Author: Michael Meskes <meskes@postgresql.org>
|
2380 | 2559 |
|
2381 | 2560 | <listitem>
|
2382 | 2561 | <!--
|
| 2562 | +Author: Michael Meskes <meskes@postgresql.org> |
| 2563 | +2019-05-22 [a1dc6ab46] Implement PREPARE AS statement for ECPG. |
| 2564 | +--> |
| 2565 | + |
| 2566 | + <para> |
| 2567 | + Add <command>PREPARE AS</command> support to |
| 2568 | + <productname>ECPG</productname> (Matsumura Ryo) |
| 2569 | + </para> |
| 2570 | + </listitem> |
| 2571 | + |
| 2572 | + <listitem> |
| 2573 | +<!-- |
2383 | 2574 | Author: Michael Paquier <michael@paquier.xyz>
|
2384 | 2575 | 2019-04-06 [249d64999] Add support TCP user timeout in libpq and the backend se
|
2385 | 2576 | -->
|
@@ -2478,8 +2669,13 @@ Author: Peter Eisentraut <peter@eisentraut.org>
|
2478 | 2669 | </para>
|
2479 | 2670 |
|
2480 | 2671 | <para>
|
2481 |
| - This is enabled with by setting environment variable |
2482 |
| - <envar>PG_COLORS</envar>. EXAMPLE? |
| 2672 | + This is enabled by setting the environment variable |
| 2673 | + <envar>PG_COLOR</envar> to <literal>always</literal> |
| 2674 | + or <literal>auto</literal>. The specific colors used can be |
| 2675 | + adjusted by setting the environment variable |
| 2676 | + <envar>PG_COLORS</envar>, using ANSI escape codes for colors. |
| 2677 | + For example, the default behavior is equivalent to |
| 2678 | + <literal>PG_COLORS="error=01;31:warning=01;35:locus=01"</literal> |
2483 | 2679 | </para>
|
2484 | 2680 | </listitem>
|
2485 | 2681 |
|
@@ -2524,6 +2720,7 @@ Author: Peter Eisentraut <peter@eisentraut.org>
|
2524 | 2720 | <!--
|
2525 | 2721 | Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
2526 | 2722 | 2018-11-19 [6e5f8d489] psql: Show IP address in \conninfo
|
| 2723 | +2019-06-14 [313f56ce2] Tweak libpq's PQhost, PQhostaddr, and psql's \connect |
2527 | 2724 | -->
|
2528 | 2725 |
|
2529 | 2726 | <para>
|
@@ -2752,6 +2949,7 @@ Author: Michael Paquier <michael@paquier.xyz>
|
2752 | 2949 | <!--
|
2753 | 2950 | Author: Alvaro Herrera <alvherre@alvh.no-ip.org>
|
2754 | 2951 | 2019-03-07 [7e413a0f8] pg_dump: allow multiple rows per insert
|
| 2952 | +2019-06-14 [a193cbec1] Add pg_dumpall rows-per-insert |
2755 | 2953 | -->
|
2756 | 2954 |
|
2757 | 2955 | <para>
|
@@ -2957,7 +3155,7 @@ Author: Michael Paquier <michael@paquier.xyz>
|
2957 | 3155 | <listitem>
|
2958 | 3156 | <!--
|
2959 | 3157 | Author: Tom Lane <tgl@sss.pgh.pa.us>
|
2960 |
| -2018-09-26 [26e9d4d4e] Convert elog.c's useful_strerror() into a globally-used |
| 3158 | +2018-09-26 [26e9d4d4e] Convert elog.c's useful_strerror() into a globally-used |
2961 | 3159 | -->
|
2962 | 3160 |
|
2963 | 3161 | <para>
|
@@ -3100,7 +3298,7 @@ Author: Etsuro Fujita <efujita@postgresql.org>
|
3100 | 3298 | <listitem>
|
3101 | 3299 | <!--
|
3102 | 3300 | Author: Jeff Davis <jdavis@postgresql.org>
|
3103 |
| -2018-07-08 [a45adc747] Fix WITH CHECK OPTION on views referencing postgres_fdw |
| 3301 | +2018-07-08 [a45adc747] Fix WITH CHECK OPTION on views referencing postgres_fdw |
3104 | 3302 | -->
|
3105 | 3303 |
|
3106 | 3304 | <para>
|
|
0 commit comments