Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: pitr replica dies on startup



Jeff Frost <jeff(at)frostconsultingllc(dot)com> writes:
> Why does it request it twice?

I think the reason is that the rollforward cycle is

	fetch next segment into RECOVERYXLOG
	process segment
	unlink RECOVERYXLOG

and only when the "fetch" step fails does it realize it's done.  So then
it has to figure out which segment it wants to start extending and fetch
that into the real name of the segment.

We could probably rejigger this to avoid a duplicate fetch in common
cases, but I'm worried that we couldn't guarantee it in every case ---
edge cases like the last valid xlog record ending right at a segment
boundary might be trouble.  If the recovery script has to handle the
situation sometimes, it's probably best to make it do so on a regular
basis --- would you like to have only found out about this when you were
trying to revive your database at 4AM?

			regards, tom lane



Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group