Re: First draft of PG 17 release notes
Alvaro Herrera <alvherre@alvh.no-ip.org>
Commits
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Revert support for ALTER TABLE ... MERGE/SPLIT PARTITION(S) commands
- 3890d90c1508 18.0 cited
-
When creating materialized views, use REFRESH to load data.
- b4da732fd64e 17.0 cited
-
Revert temporal primary keys and foreign keys
- 8aee330af55d 17.0 cited
-
Avoid needless large memcpys in libpq socket writing
- c4ab7da60617 17.0 cited
-
Enhance nbtree ScalarArrayOp execution.
- 5bf748b86bc6 17.0 cited
-
Introduce a non-recursive JSON parser
- 3311ea86edc7 17.0 cited
-
Combine freezing and pruning steps in VACUUM
- 6dbb490261a6 17.0 cited
-
Allow SIGINT to cancel psql database reconnections.
- cafe1056558f 17.0 cited
-
Provide API for streaming relation data.
- b5a9b18cd0bc 17.0 cited
-
Add hash support functions and hash opclass for contrib/ltree.
- 485f0aa85995 17.0 cited
-
Pull up ANY-SUBLINK with the necessary lateral support.
- 9f133763961e 17.0 cited
-
Read WAL directly from WAL buffers.
- 91f2cae7a4e6 17.0 cited
-
Introduce the dynamic shared memory registry.
- 8b2bcf3f287c 17.0 cited
-
Add macros for looping through a List without a ListCell.
- 14dd0f27d7cd 17.0 cited
-
Support +/- infinity in the interval data type.
- 519fc1bd9e9d 17.0 cited
-
Extend ALTER OPERATOR to allow setting more optimization attributes.
- 2b5154beab79 17.0 cited
-
Consider cheap startup paths in add_paths_to_append_rel
- a8a968a8212e 17.0 cited
On 2024-May-14, Bruce Momjian wrote: > On Tue, May 14, 2024 at 03:39:26PM -0400, Melanie Plageman wrote: > > I think that we need to more clearly point out the implications of the > > feature added by Sawada-san (and reviewed by John) in 667e65aac35497. > > Vacuum no longer uses a fixed amount of memory for dead tuple TID > > storage and it is not preallocated. This affects users as they may > > want to change their configuration (and expectations). > > > > If you make that item more specific to their work, you should also > > remove my name, as the work I did on vacuum this release was unrelated > > to their work on dead tuple TID storage. > > > > The work Heikki and I did which culminated in 6dbb490261 mainly has > > the impact of improving vacuum's performance (vacuum emits less WAL > > and is more efficient). So you could argue for removing it from the > > release notes if you are using the requirement that performance > > improvements don't go in the release notes. > > I don't think users really care about these details, just that it is > faster so they will not be surprised if there is a change. I was > purposely vague to group multiple commits into the single item. By > grouping them together, I got enough impact to warrant listing it. If > you split it apart, it is harder to justify mentioning them. I disagree with this. IMO the impact of the Sawada/Naylor change is likely to be enormous for people with large tables and large numbers of tuples to clean up (I know we've had a number of customers in this situation, I can't imagine any Postgres service provider that doesn't). The fact that maintenance_work_mem is no longer capped at 1GB is very important and I think we should mention that explicitly in the release notes, as setting it higher could make a big difference in vacuum run times. I don't know what's the impact of the Plageman/Linnakangas work, but since there are no user-visible consequences other than it being faster, I agree it could be put more succintly, perhaps together as a sub-para of the same item. What about something like this? <para> Lift the 1 GB allocation limit for vacuum memory usage for dead tuples, and make storage more compact and performant. </para> <para> This can reduce the number of index passes that vacuum has to perform for tables with many dead tuples, shortening vacuum times. </para> <para> Also, the WAL traffic caused by vacuum has been made more compact. </para> > > However, one of the preliminary commits for this f83d70976 does > > change WAL format. There are three WAL records which no longer exist > > as separate records. Do users care about this? I don't think so. -- Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/ "You don't solve a bad join with SELECT DISTINCT" #CupsOfFail https://twitter.com/connor_mc_d/status/1431240081726115845