Thread: pgsql: Fix WAL file replacement during cascading replication on Windows

pgsql: Fix WAL file replacement during cascading replication on Windows

From
Heikki Linnakangas
Date:
Fix WAL file replacement during cascading replication on Windows.

When the startup process restores a WAL file from the archive, it deletes
any old file with the same name and renames the new file in its place. On
Windows, however, when a file is deleted, it still lingers as long as a
process holds a file handle open on it. With cascading replication, a
walsender process can hold the old file open, so the rename() in the startup
process would fail. To fix that, rename the old file to a temporary name, to
make the original file name available for reuse, before deleting the old
file.

Branch
------
REL9_2_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/4b8dacfcef7ad16939ec8695019747fb45a80847

Modified Files
--------------
src/backend/access/transam/xlog.c |   28 +++++++++++++++++++++++++++-
1 files changed, 27 insertions(+), 1 deletions(-)