Change the retry-loop in standby mode to also try restoring files from
pg_xlog directory. This is essential for replaying WAL records that
were streamed from the master, after a standby server restart.
If a corrupt record is seen in a file restored from the archive or
streamed from the master, log it as a WARNING and keep retrying. If the
corruption is permanent, and not just a glitch in the whatever copies the
files to the archive or a network error not caught by CRC checks in TCP
for example, we will keep retrying and logging the WARNING indefinitely.
But that's better than shutting down completely, the standby is still
useful for running read-only queries. In PITR the recovery ends at such a
corrupt record, which is a bit questionable, but that's the behavior we
had in previous releases and we don't feel like chaning it now. It does
make sense for tools like pg_standby.
xlog.c (r1.384 -> r1.385)
pgsql-committers by date
|Next:||From: Heikki Linnakangas||Date: 2010-03-30 16:28:28|
|Subject: Re: Re: [COMMITTERS] pgsql: Make standby server continuously
retry restoring the next WAL|
|Previous:||From: Peter Eisentraut||Date: 2010-03-30 16:08:23|
|Subject: pgsql: Message tuning|