Re: [Patch] pg_rewind: options to use restore_command from recovery.conf or command line

Alexey Kondratov <a.kondratov@postgrespro.ru>

From: Alexey Kondratov <a.kondratov@postgrespro.ru>
To: Andrey Borodin <x4mmm@yandex-team.ru>
Cc: PostgreSQL Hackers <pgsql-hackers@postgresql.org>, vladimirlesk@yandex-team.ru, Dmitriy Sarafannikov <dsarafan@yandex-team.ru>
Date: 2018-10-22T15:51:27Z
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. Move frontend-side archive APIs from src/common/ to src/fe_utils/

  2. Add -c/--restore-target-wal to pg_rewind

  3. Move routine definitions of xlogarchive.c to a new header file

  4. Move routine building restore_command to src/common/

  5. Integrate recovery.conf into postgresql.conf

Hi Andrey,

Thank you for your reply.

> I think it is better to load restore_command from recovery.conf.
Yes, it seems to be the most native way. That's why I needed this 
rewritten (mostly copy-pasted) frontend-safe version of parser (guc-file.l).

> I didn't actually try patch yet, but the idea seems interesting. Will 
> you add it to the commitfest?
I am willing to add it to the November commitfest, but I have some 
concerns regarding frontend version of GUC parser. Probably, it is 
possible to refactor guc-file.l to use it on both front- and backend. 
However, it requires usage of IFDEF and mocking up ereport for frontend, 
which is a bit ugly.


-- 
Alexey Kondratov

Postgres Professional: https://www.postgrespro.com
Russian Postgres Company