Re: [Patch] pg_rewind: options to use restore_command from recovery.conf or command line
Michael Paquier <michael@paquier.xyz>
From: Michael Paquier <michael@paquier.xyz>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Alexey Kondratov <a.kondratov@postgrespro.ru>, Andrey Borodin <x4mmm@yandex-team.ru>, PostgreSQL Hackers <pgsql-hackers@postgresql.org>, vladimirlesk@yandex-team.ru, Dmitriy Sarafannikov <dsarafan@yandex-team.ru>
Date: 2018-10-29T07:06:00Z
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 →
-
Move frontend-side archive APIs from src/common/ to src/fe_utils/
- 8d8b89266ca0 13.0 landed
- a3b2bf1fe7ce 14.0 landed
-
Add -c/--restore-target-wal to pg_rewind
- a7e8ece41cf7 13.0 landed
-
Move routine definitions of xlogarchive.c to a new header file
- 616ae3d2b056 13.0 landed
-
Move routine building restore_command to src/common/
- e09ad07b21a2 13.0 landed
-
Integrate recovery.conf into postgresql.conf
- 2dedf4d9a899 12.0 cited
On Mon, Oct 22, 2018 at 02:19:07PM -0300, Alvaro Herrera wrote: > Hmm, I remember we had a project to have a new postmaster option that > would report the value of some GUC option, so instead of parsing the > file in the frontend, you'd invoke the backend to do the parsing. But I > don't know what became of that ... I don't see it in the postmaster > --help output. I did not recall this one. > Of course, recovery.conf options are not GUCs either ... that's another > pending patch. But I do recall this one. Still isn't it q bit different? Because in the case of pg_rewind let's remember that the origin cluster can be offline or online, and that the target has to be offline. I am also not sure that we would want to use the same command restore_command with pg_rewind and an instance in recovery. Something that we could think about is directly to provide a command to pg_rewind via command line. Another possibility would be to have a separate tool which scans a data folder and fetches by itself a range of WAL segments wanted. I have implemented something like that for an internal solution, able to handle as well timeline jumps across segments with a server-side and a client-side implementation (that was to allow a passive to catch up using a set of WAL segments, if the active does not have a replication slot, and segments were fetched through a Postgres instance which has a local archive). -- Michael