Re: reloption to prevent VACUUM from truncating empty pages at the end of relation

Darafei Komяpa Praliaskouski <me@komzpa.net>

From: Darafei Praliaskouski <me@komzpa.net>
To: pgsql-hackers@lists.postgresql.org
Cc: Takayuki Tsunakawa <maumau307@gmail.com>
Date: 2019-04-06T07:53:07Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Add TRUNCATE parameter to VACUUM.

  2. Add vacuum_truncate reloption.

  3. Allow VACUUM to be run with index cleanup disabled.

The following review has been posted through the commitfest application:
make installcheck-world:  not tested
Implements feature:       not tested
Spec compliant:           not tested
Documentation:            not tested

I have read disable-vacuum-truncation_v6.patch.

I like it the way it is.

Word "truncation" for me means "remove everything from the table" (as in TRUNCATE) and I don't want VACUUM to do that :), shrink feels appropriate. 
TRIM has a connotation from SSD drives, where you can discard blocks in the middle of your data and let the underlying infrastructure handle space allocation on it.
Please keep it for the good times Postgres can punch a hole in the middle of relation and let filesystem handle that space.

The new status of this patch is: Ready for Committer