Re: recovery_target_action=pause with confusing hint - Mailing list pgsql-hackers

From Fujii Masao
Subject Re: recovery_target_action=pause with confusing hint
Date
Msg-id 4be18679-df39-f2fc-13f9-d73820cd6945@oss.nttdata.com
Whole thread Raw
In response to recovery_target_action=pause with confusing hint  (Sergei Kornilov <sk@zsrv.org>)
Responses Re: recovery_target_action=pause with confusing hint
List pgsql-hackers

On 2020/01/30 20:00, Sergei Kornilov wrote:
> Hello
> 
> Currently during point-in-time recovery with recovery_target_action = 'pause' we print log lines:
> 
>> LOG: recovery has paused
>> HINT: Execute pg_wal_replay_resume() to continue.
> 
> My colleague told me that this is a terrible moment: to continue what exactly? It sounds like "to continue replay",
similarto normal pg_wal_replay_pause/pg_wal_replay_resume behavior. We have just small note in documentation:
 
> 
>> The paused state can be resumed by using pg_wal_replay_resume() (see Table 9.81), which then causes recovery to
end.
> 
> But I think this is important place and can be improved.
> 
> Also the database does not respond to the promote signals at this stage. Attached patch 0001 with the test will
fail.
> 
> 0002 patch contains my proposed ideas:
> - introduce separate message for pause due pg_wal_replay_pause call and for recovery_target_action.

+1

> - check for standby triggers only for recovery_target_action - I am not sure this would be safe for
pg_wal_replay_pause()call case
 

Agreed. Basically I think that recoveryPausesHere() should the promotion
trigger whether recovery target is reached or not. But one question is;
how should the recovery behave if recovery target is reached with
recovery_target_action=pause after the promotion is requested?
It should pause? Or promote?

Regards,

-- 
Fujii Masao
NTT DATA CORPORATION
Advanced Platform Technology Group
Research and Development Headquarters



pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: Data race in interfaces/libpq/fe-exec.c
Next
From: Michael Banck
Date:
Subject: [Patch] Make pg_checksums skip foreign tablespace directories