Re: confusion between max_standby_archive_delay, max_standby_archive_delay and max_standby_archive_delay - Mailing list pgsql-general

From Laurenz Albe
Subject Re: confusion between max_standby_archive_delay, max_standby_archive_delay and max_standby_archive_delay
Date
Msg-id c01302e83810ef34e4f3c05f3779a31849c24432.camel@cybertec.at
Whole thread Raw
In response to Re: confusion between max_standby_archive_delay, max_standby_archive_delay and max_standby_archive_delay  (Ron <ronljohnsonjr@gmail.com>)
List pgsql-general
On Sun, 2023-03-12 at 12:00 -0500, Ron wrote:
> On 3/12/23 09:01, Laurenz Albe wrote:
> > On Sun, 2023-03-12 at 01:53 +0530, Atul Kumar wrote:
> > > Could someone help me in telling the difference between these three parameters
> > > 1. max_standby_archive_delay
> > > 2. max_standby_streaming_delay
> > > 3. recovery_min_apply_delay
> > >
> > > My basic motive is to make the standby database server to be delayed to apply the
> > > changes on itself,  if any data has been accidentally deleted/updated/ truncated
> > > from the primary server.
> > >
> > > Which parameter do I need to configure to serve this purpose ? And
> > > When will the remaining two parameters be used ?
> > >
> > > It would be great if anyone can explain them with a brief example.
> > The parameter that does what you describe you want is "recovery_min_apply_delay".
> >
> > The other parameters only deal with delaying replication in the face of a
> > replication conflict.
> >
> > Note that changes are immediately shipped to the standby, what is delayed with
> > "recovery_min_apply_delay" is only the replay of the WAL information.
> >
> > So you can recover from a logical problem like DROP TABLE by stopping the
> > standby, setting "recovery_target_time" to a time before the problem happened
> > and then restarting the standby.  Then recovery will stop before the problem
> > is replayed.
>
> How do you determine what to set recovery_min_apply_delay to? 15 minutes...
> an hour... 8 hours... a week?  (OP's problem is better solved by restoring a
> recent backup to a separate instance, while letting replication do it's
> DR/HA things.)

That depends entirely on whether how you want to query the standby.  It is totally
irrelevant for the question of configuring a standby that is deliberately delayed
in order to recover from data loss caused by SQL.

Yours,
Laurenz Albe



pgsql-general by date:

Previous
From: Ron
Date:
Subject: Re: confusion between max_standby_archive_delay, max_standby_archive_delay and max_standby_archive_delay
Next
From: Martin Goodson
Date:
Subject: Help? Unexpected PostgreSQL compilation failure using generic compile script