[HACKERS] Patch: restrict pg_rewind to whitelisted directories - Mailing list pgsql-hackers

From Chris Travers
Subject [HACKERS] Patch: restrict pg_rewind to whitelisted directories
Date
Msg-id CAN-RpxD1Mg4KAhPBx8x9sFmeVizdY1aJvv0iE25m6dKUNG_H8g@mail.gmail.com
Whole thread Raw
Responses Re: [HACKERS] Patch: restrict pg_rewind to whitelisted directories
List pgsql-hackers
The attached patch is cleaned up and filed for the commit fest this next month:

Here's the full commit message via Mercurial.  I will likely have a new branch per version the patch since that's the closest thing to a rebase in this version control system.

changeset:   60492:47f87a2d2fa1

tag:         mine/pg_rewind_restrict_dirs

parent:      60446:e638ba9c3c11

user:        Chris Travers <chris.travers@gmail.com>

date:        Mon Oct 30 12:25:18 2017 +0100

files:       doc/src/sgml/ref/pg_rewind.sgml src/bin/pg_rewind/copy_fetch.c src/bin/pg_rewind/fetch.c src/bin/pg_rewind/fetch.h src/bin/pg_rewind/libpq_fetch.c src/bin/pg_rewind/pg_rewind.c src/bin/pg_rewind/t/003_extrafiles.pl

description:

Restrict pg_rewind to whitelisted directories.


This is intended to be a minimum working version and in fact builds and passes tests.

Note that tests for extra files have been changed to reflect new behavior and additional

debugging informnation added in to output in case of failure.


The patch iterates through a series of set directories to synchronize them only.  This improves

predictability of the complete state of the system after a rewind.


One important outstanding question here is whether we need to ensure the possibility of backing

up other files if they exist via an --include-path command line switch (this would not be a glob).

In the thread discussing this patch, Michael Paquier has expressed concern about configuration

files created by extensions or other components not being copied.  I could add such a switch but

the patch is long enough, and it is unclear enough to the extent this is needed at present, so

I am leaving it at the reviewer's discretion whether I should add this here or submit a second

patch later to add the ability to add additional paths to the filemap.


Either way, it is worth noting that I expect to have a subsequent patch either incorporated here or in a further submission that takes this and adds the ability to include additional directories or files via a command line flag.  This will *not* be a shell glob but one directory or file per invocation of the switch (similar to -t in pg_dump).

--
Best Regards,
Chris Travers
Database Administrator

Tel: +49 162 9037 210 | Skype: einhverfr | www.adjust.com 
Saarbrücker Straße 37a, 10405 Berlin

Attachment

pgsql-hackers by date:

Previous
From: Simon Riggs
Date:
Subject: Re: [HACKERS] MERGE SQL Statement for PG11
Next
From: Robert Haas
Date:
Subject: Re: [HACKERS] WIP: long transactions on hot standby feedback replica/ proof of concept