postgresql/src
Heikki Linnakangas ee994272ca Delay reading timeline history file until it's fetched from master.
Streaming replication can fetch any missing timeline history files from the
master, but recovery would read the timeline history file for the target
timeline before reading the checkpoint record, and before walreceiver has
had a chance to fetch it from the master. Delay reading it, and the sanity
checks involving timeline history, until after reading the checkpoint
record.

There is at least one scenario where this makes a difference: if you take
a base backup from a standby server right after a timeline switch, the
WAL segment containing the initial checkpoint record will begin with an
older timeline ID. Without the timeline history file, recovering that file
will fail as the older timeline ID is not recognized to be an ancestor of
the target timeline. If you try to recover from such a backup, using only
streaming replication to fetch the WAL, this patch is required for that to
work.
2013-01-03 10:41:58 +02:00
..
backend Delay reading timeline history file until it's fetched from master. 2013-01-03 10:41:58 +02:00
bin Move tar function headers to pgtar.h 2013-01-02 20:34:08 +01:00
include Move tar function headers to pgtar.h 2013-01-02 20:34:08 +01:00
interfaces Update copyrights for 2013 2013-01-01 17:15:01 -05:00
makefiles Remove allow_nonpic_in_shlib 2012-12-18 01:13:59 -05:00
pl Update copyrights for 2013 2013-01-01 17:15:01 -05:00
port Move tar function headers to pgtar.h 2013-01-02 20:34:08 +01:00
template Remove _FORTIFY_SOURCE 2012-10-10 21:42:38 -04:00
test Update copyrights for 2013 2013-01-01 17:15:01 -05:00
timezone Update copyrights for 2013 2013-01-01 17:15:01 -05:00
tools Update copyrights for 2013 2013-01-01 17:15:01 -05:00
tutorial Update copyrights for 2013 2013-01-01 17:15:01 -05:00
.gitignore Convert cvsignore to gitignore, and add .gitignore for build targets. 2010-09-22 12:57:04 +02:00
DEVELOPERS Replace a couple of references to files that no longer exist in the source 2009-05-04 08:08:47 +00:00
Makefile Fix some oversights in distprep and maintainer-clean targets. 2011-03-10 00:04:05 -05:00
Makefile.global.in Add mode where contrib installcheck runs each module in a separately named database. 2012-12-11 11:52:45 -05:00
Makefile.shlib Remove configure flag --disable-shared, as it is no longer used by any 2012-08-30 16:26:53 -04:00
bcc32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
nls-global.mk NLS: Use msgmerge --previous option 2012-12-13 23:12:12 -05:00
win32.mak Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00