postgresql/src/include/access
Fujii Masao 2244c0652d Remove files signaling a standby promotion request at postmaster startup
This commit makes postmaster forcibly remove the files signaling
a standby promotion request. Otherwise, the existence of those files
can trigger a promotion too early, whether a user wants that or not.

This removal of files is usually unnecessary because they can exist
only during a few moments during a standby promotion. However
there is a race condition: if pg_ctl promote is executed and creates
the files during a promotion, the files can stay around even after
the server is brought up to new master. Then, if new standby starts
by using the backup taken from that master, the files can exist
at the server startup and should be removed in order to avoid
an unexpected promotion.

Back-patch to 9.1 where promote signal file was introduced.

Problem reported by Feike Steenbergen.
Original patch by Michael Paquier, modified by me.

Discussion: 20150528100705.4686.91426@wrigleys.postgresql.org
2015-09-09 22:52:35 +09:00
..
attnum.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
clog.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
genam.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
gin.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
gin_private.h Fix query-duration memory leak with GIN rescans. 2015-01-30 17:59:17 +01:00
gist.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
gist_private.h Avoid palloc in critical section in GiST WAL-logging. 2014-04-03 15:43:50 +03:00
gistscan.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
hash.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
heapam.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
heapam_xlog.h Fix decoding of consecutive MULTI_INSERTs emitted by one heap_multi_insert(). 2014-07-12 14:30:43 +02:00
hio.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
htup.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
htup_details.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
itup.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
multixact.h Teach autovacuum about multixact member wraparound. 2015-05-08 12:53:30 -04:00
nbtree.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
printtup.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
reloptions.h Move view reloptions into their own varlena struct 2014-07-14 17:24:40 -04:00
relscan.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
rewriteheap.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
rmgr.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
rmgrlist.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
sdir.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
skey.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
slru.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
spgist.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
spgist_private.h Fix handling of all-zero pages in SP-GiST vacuum. 2015-07-27 12:32:08 +03:00
subtrans.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
sysattr.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
timeline.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
transam.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
tupconvert.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
tupdesc.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
tupmacs.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
tuptoaster.h Minor cleanup/code review for "indirect toast" stuff. 2015-02-09 12:30:55 -05:00
twophase.h Fix race condition in preparing a transaction for two-phase commit. 2014-05-15 16:37:50 +03:00
twophase_rmgr.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
valid.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
visibilitymap.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
xact.h Treat 2PC commit/abort the same as regular xacts in recovery. 2014-07-29 11:57:39 +03:00
xlog.h Remove files signaling a standby promotion request at postmaster startup 2015-09-09 22:52:35 +09:00
xlog_fn.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
xlog_internal.h Don't archive bogus recycled or preallocated files after timeline switch. 2015-04-13 17:22:21 +03:00
xlogdefs.h pgindent run for 9.4 2014-05-06 12:12:18 -04:00
xlogreader.h Update copyright for 2014 2014-01-07 16:05:30 -05:00
xlogutils.h Update copyright for 2014 2014-01-07 16:05:30 -05:00