Subject: Feature matrix updates

From: "Jonathan S. Katz" <[email-masked]>
Date: Sun, 17 Jul 2022 14:34:38 -0400

Hi,

Please see updates for the feature matrix in advance of the PostgreSQL 
15 release:

https://www.postgresql.org/about/featurematrix/

In addition to adding information about new features in PostgreSQL 
15[1][2], this version of the feature matrix adds additional  categories 
including:

* Replication
* JSON
* Transactions and Visibility
* VACUUM and Maintenance
* Client Applications

This is to continue to reduce the amount of features kept in the 
"Backend" section (and to a lesser extent, "Performance"), which 
historically was used as a "catch all".

This also removed the "contrib/" prefix from all of the additional 
modules listed in "Additional Modules".

Please let me know your thoughts on the PG15 bits and if there is 
anything notable that is missing.

Thanks,

Jonathan

[1] https://www.postgresql.org/docs/15/release-15.html
[2] 
https://www.postgresql.org/about/news/postgresql-15-beta-1-released-2453/

---

From: Peter Geoghegan <[email-masked]>
Date: Sun, 17 Jul 2022 11:53:29 -0700

> * Transactions and Visibility

Looks good, but can we remove "Autovacuum enabled by default" and
"Multiple autovacuum workers"? That would leave only "Integrated
autovacuum daemon", which seems like it covers the existence of
autovacuum in enough detail. I believe that autovacuum has existed in
more or less its current form for far longer than the total lifespan of
"autovacuum as a contrib extension". Prehistoric autovacuum just
doesn't seem like a useful point of comparison here.

There are still probably some places in the docs which imply that
autovacuum plays second fiddle to the VACUUM command, when if anything
it's really the other way around. We still have lots of problems with
the documentation of VACUUM, which I hope to get around to fixing in
the next few months.

Thanks
--
Peter Geoghegan

---

From: Erik Rijkers <[email-masked]>
Date: Sun, 17 Jul 2022 22:18:27 +0200

> * Transactions and Visibility

Perhaps add one item for

   * Indexing & Constraints

to wit:

-----
"Allow unique constraints and indexes to treat NULL values as not 
distinct (Peter Eisentraut)

Previously NULL values were always indexed as distinct values, but this 
can now be changed by creating constraints and indexes using UNIQUE 
NULLS NOT DISTINCT."
-----

Erik

---

From: "Jonathan S. Katz" <[email-masked]>
Date: Mon, 18 Jul 2022 21:30:37 -0400

> doesn't seem like a useful point of comparison here.

Yeah, included in the above update was removing some "prehistoric" (as 
you term it) features/changes that did not seem to make sense on the matrix.

I think it's OK to remove those two.

> the documentation of VACUUM, which I hope to get around to fixing in

Sounds good.

Jonathan

---

From: "Jonathan S. Katz" <[email-masked]>
Date: Mon, 18 Jul 2022 21:32:34 -0400

On 7/17/22 4:18 PM, Erik Rijkers wrote:
>> 15[1][2], this version of the feature matrix adds additional  
>> categories including:
>>
>> * Replication
>> * JSON

Agreed, that was an unintended omission. I've added an entry for this.

Thanks!

Jonathan

---

From: Morris de Oryx <[email-masked]>
Date: Tue, 26 Jul 2022 08:23:42 +1000

It would be helpful to mention BEGIN ATOMIC at or near the Procedural
Languages section. Definitely my favorite server-side code change in PG 14:

* Parse tree instead of raw text for errors-on-save rather than
errors-on-run.
* Dependency tracking!

I only stumbled across the feature recently, doesn't seem to have been
given a lot of fanfare.

---

From: "Jonathan S. Katz" <[email-masked]>
Date: Tue, 26 Jul 2022 09:27:49 -0400

> I only stumbled across the feature recently, doesn't seem to have been 

*kicks self* I definitely missed that (or did not parse it carefully 
enough) at the time of the PostgreSQL 14 release. That is definitely an 
awesome feature.

I've added it to the feature matrix:

https://www.postgresql.org/about/featurematrix/detail/393/

Thanks,

Jonathan