Re: Allow pg_archivecleanup to remove backup history files

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: torikoshia <torikoshia@oss.nttdata.com>
Cc: Kyotaro Horiguchi <horikyota.ntt@gmail.com>, masao.fujii@oss.nttdata.com, bharath.rupireddyforpostgres@gmail.com, pgsql-hackers@postgresql.org
Date: 2023-07-19T04:58:56Z
Lists: pgsql-hackers
On Fri, Jun 30, 2023 at 03:48:43PM +0900, Michael Paquier wrote:
> I have begun cleaning up my board, and applied 0001 for the moment.

And a few weeks later..  I have come around this thread and applied
0002 and 0003.

The flow of 0002 was straight-forward.  My main issue was in 0003,
actually, where the TAP tests were kind of confusing as written:
- There was no cleanup of the files still present after a single
command check, which could easily mess up the tests.
- The --dry-run case was using the list of WAL files for the extension
pattern checks, hardcoding names based on the position of its array.
I have switched that to use a third list of files, instead.

The result looked OK and that can be extended easily for more
patterns or more commands, so applied 0003 after doing these
adjustments, coupled with a pgperltidy run, a pgperlcritic check and
an indentation.
--
Michael

Commits

  1. pg_archivecleanup: Add --clean-backup-history

  2. pg_archivecleanup: Refactor loop doing old segment removals

  3. Introduce long options in pg_archivecleanup