PostgreSQL 12 Press Release - First Draft

"Jonathan S. Katz" <[email protected]> Wed, 21 Aug 2019 16:43:02 -0400
Newsgroups gmane.comp.db.postgresql.advocacy
Message-ID <[email protected]>
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--eB0xfPBlWOD2VwuTC6Lc1FU1nZ3whzxqb
Content-Type: multipart/mixed; boundary="vdigOTH0eUS6e39ZzH1Tm7FUEyZsMLyXo";
 protected-headers="v1"
From: "Jonathan S. Katz" <[email protected]>
To: PostgreSQL Advocacy <[email protected]>
Message-ID: <[email protected]>
Subject: PostgreSQL 12 Press Release - First Draft

--vdigOTH0eUS6e39ZzH1Tm7FUEyZsMLyXo
Content-Type: multipart/mixed;
 boundary="------------22E89181B2A6C49E6D88C364"
Content-Language: en-US

This is a multi-part message in MIME format.
--------------22E89181B2A6C49E6D88C364
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Hi,

Attached is a first draft of the press release for PostgreSQL 12.
Feedback welcome (more below), though I ask feedback to be provided no
later than September 6, 2019.

A few comments for context:

Using the release notes[1], 12 beta 1 release[2], and miscellaneous
feedback as a guide, there seemed to be roughly five major feature groups=
:

- Overall Performance Improvements (focuses on the indexing +
partitioning work, MCV stats)
- Enhancements to SQL Conformance & Functionality (SQL/JSON, inlined
CTEs, generated columns)
- Internationalization (ICU case insensitivity)
- Authentication (GSSAPI encryption, LDAP discovery, clientcert=3Dverify-=
full)
- Administrative (REINDEX CONCURRENTLY, pg_checksums)

I mentioned  pluggable storage interface in it but did not elaborate in
too much detail. I am a huge fan of this effort, but for the typical
PG12 user, we may not want to elaborate too much on it in the general
press release.

Feedback I'm looking for:

- Grammar / typos / awkward wording (I did already catch "party of a
query" :)
- Checks for technical accuracy
- Glaring feature omissions
- Features that should be downplayed
- User testimonials / quotes

Thanks!

Jonathan

[1] https://www.postgresql.org/docs/12/release-12.html
[2] https://www.postgresql.org/about/news/1943/

--------------22E89181B2A6C49E6D88C364
Content-Type: text/markdown; x-mac-type="0"; x-mac-creator="0";
 name="release.en.md"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: attachment;
 filename="release.en.md"

# PostgreSQL 12 Released!

The PostgreSQL Global Development Group today announced the release of
PostgreSQL 12, the latest version of the world=E2=80=99s most advanced op=
en source
database.

PostgreSQL 12 enhancements include notable improvements
to query performance, particularly over larger data sets, and overall spa=
ce
utilization. This release provides application developers with new capabi=
lities
such as SQL/JSON path expression support, optimizations for how common-ta=
ble
expression ("WITH") queries are executed, and generated columns. The Post=
greSQL
community continues to support the extensibility and robustness of Postgr=
eSQL,
with further additions to internationalization, authentication, and provi=
ding
easier ways to administrate PostgreSQL. This release also introduces the
pluggable table storage interface, which allows developers to create thei=
r own
methods for storing data.

**HOLD FOR QUOTE**

PostgreSQL benefits from over 20 years of open source development and has=
 become
the preferred open source relational database for organizations of all si=
zes.
The project continues to receive recognition across the industry, includi=
ng
being featured for the second year in a row as the "DBMS of the Year" in =
2018 by
DB-Engines and receiving the "Lifetime Achievement" open source award at =
OSCon
2019.

## Overall Performance Improvements

PostgreSQL 12 provides significant performance and maintenance enhancemen=
ts to
its indexing system and to partitioning.

B-tree Indexes, the standard type of indexing in PostgreSQL, have been op=
timized
in PostgreSQL 12 to better handle workloads where the indexes are frequen=
tly
modified. Using a fair use implementation of the TPC-C benchmark, Postgre=
SQL 12
demonstrated on average a 40% reduction in space utilization and an overa=
ll gain
in query performance.

Queries on partitioned tables have also seen demonstrable improvements,
particularly for tables with thousands of partitions that only need to re=
trieve
data from a select few. PostgreSQL 12 also improvements the performance o=
f
adding data to partitioned tables via "INSERT" and "COPY", and a new part=
ition
can be attached to a table with blocking any queries on it.

There are additional enhancements to indexing in PostgreSQL 12 that affec=
t
overall performance, including lower overhead in write-head-log generatio=
n for
GiST, GIN, and SP-GiST indexes, the ability to create covering indexes (t=
he
"INCLUDE" clause) on GiST indexes, the ability to perform K-nearest
neighbor queries with the distance operator ("<->") using SP-GiST indexes=
, and
CREATE STATISTICS now supporting most-common value (MCV) statistics to he=
lp with
columns that are nonuniformly distributed.

## Enhancements to SQL Conformance & Functionality

PostgreSQL is known for its conformance to the SQL standard =E2=80=93 one=
 reason why it
was renamed from "POSTGRES" to "PostgreSQL" =E2=80=93 and PostgreSQL 12 a=
dds several
features that build on the implementation of the SQL standard and offer e=
nhanced
functionality.

PostgreSQL 12 introduces the ability to run queries over JSON documents u=
sing
JSON path expressions defined in the SQL/JSON standard. Additionally, cer=
tain
JSON path expressions can utilize the existing indexing mechanisms for do=
cuments
stored in the JSONB format to efficiently retrieve data.

Common table expressions, aka "WITH" queries, can now be automatically in=
lined
by PostgreSQL 12, which in turn can help increase the performance of many=

existing queries. In this release, a WITH query can be inlined if it is n=
ot
recursive, does not have any side-effects, and is only referenced once in=
 a
later part of a query.

PostgreSQL 12 also introduces generated columns, which is a type of colum=
n that
can be computed its value from other columns in the same table. Currently=
,
PostgreSQL only supports "stored generated columns," where the computed v=
alue is
stored on the disk.

## Internationalization

PostgreSQL 12 extends its support of ICU collations by allowing users to =
define
"nondeterministic collations" that can, for example, allow case-insensiti=
ve or
accent-insensitive comparisons.

## Authentication

PostgreSQL expands on its robust authentication method support with sever=
al
enhancements that provide additional security and functionality in
PostgreSQL 12. This release introduces both client and server-side encryp=
tion
for authentication over GSSAPI interfaces, as well as the ability for Pos=
tgreSQL
to discover LDAP servers using if it was compiled with OpenLDAP.

Additionally, PostgreSQL 12 now supports a form of multifactor authentica=
tion. A
PostgreSQL server can now require an authentication client to provide a v=
alid
SSL certificate with their username using the "clientcert=3Dverify-full" =
option
and combine this with the requirement of a separate authentication method=
 (e.g.
"scram-sha-256").

## Administration

PostgreSQL 12 introduces the ability to rebuild indexes without blocking =
writes
to an index via the "REINDEX CONCURRENTLY" command, allowing users to avo=
id
downtime scenarios for lengthy index rebuilds.

Additionally, PostgreSQL 12 can now enable or disable page checksums in a=
n
offline cluster using the "pg_checksums" command. Previously page checksu=
ms, a
feature to help verify the integrity of data stored to disk, could only b=
e
enabled at the time a PostgreSQL cluster was initialized with "initdb."

For a full list of features included in this release, please read the=C2=A0=
release
notes, which can be found at: https://www.postgresql.org/docs/12/static/r=
elease-12.html

## About PostgreSQL

PostgreSQL=C2=A0is the world's most advanced open source database, with a=
 global
community of thousands of users, contributors, companies and organization=
s. The
PostgreSQL Project builds on over 30 years of engineering, starting at th=
e
University of California, Berkeley, and has continued with an unmatched p=
ace of
development. PostgreSQL's mature feature set not only matches top proprie=
tary
database systems, but exceeds them in advanced database features, extensi=
bility,
security, and stability.

Learn more about PostgreSQL and participate in our community at=C2=A0Post=
greSQL.org.

--------------22E89181B2A6C49E6D88C364--

--vdigOTH0eUS6e39ZzH1Tm7FUEyZsMLyXo--

--eB0xfPBlWOD2VwuTC6Lc1FU1nZ3whzxqb
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----

iQIyBAEBCAAdFiEE+oS2la8r95ogZD/x8QSccp8cZScFAl1drNYACgkQ8QSccp8c
ZSd91A/45DMgzPqmJGPTdtKkDb2KG1/UlWIJyMR0zRK8EwNgyEJQ43pWaNVoG0cf
cF8bkTUsJ/y/21cyFrCjh+zAI1xQJWtEfycxB5UBZXcDw6pErkxnxSB6hu61zelO
PUaWw+bD8HSMLUUQnik+Uj6zqEKzR/dXl3f3XaPyRyhowgZxC9f43AfPmvIGhoNK
Da6DxdITpM4Ve1my+B+JizlaSkVJhyK4zR4txf4Zdsd+N239z8eRSNj7ohPKR17G
9UrnaV+wrEJBvxc5DK6DodMktakiV5YSv9/3Y+PSv8j+C7unx9xujD3tPIEofg8c
xmZiBb9ZnEmAFfjPnfbNIuZ9La+GZcW9K6N7aYWWEPH89pUr6R0zu5UdS7fOlQ7O
SNij3KDJdRqJDz+9ukiz5jUxACxDT4N4qUWwVtIqMzk83poQ8mm9QU1IVwj4XWIO
Iinwq32jN3wOY1lDjT0D6KyS+a2JqBAbXmX5ipUjDDwYFHHkbpOFrAl9EkkjiG/+
u5B3IfyavRGSxndfFi4yCm7/R49COOpgtLP3N9hYHmjVAiPPS95j5pu9k11RVMLD
9aTKPbNBIBHKH9oOrMrp5vwiRmjQ32fSU9fFvIj8nPOfR6Mp+cJdZaXwsG0z5EgS
PmHkeCMumtj4IhH4m0INGKRJPfokFn7Z3df/2Plo1kjQaArs9Q==
=6xgq
-----END PGP SIGNATURE-----

--eB0xfPBlWOD2VwuTC6Lc1FU1nZ3whzxqb--