Skip to content

Commit 8ad6c5d

Browse files
committed
Add HINT for restartpoint race with KeepFileRestoredFromArchive().
The five commits ending at cc2c7d6 closed this race condition for v15+. For v14 through v10, add a HINT to discourage studying the cosmetic problem. Reviewed by Kyotaro Horiguchi and David Steele. Discussion: https://postgr.es/m/20220731061747.GA3692882@rfd.leadboat.com
1 parent 6d9481c commit 8ad6c5d

File tree

2 files changed

+12
-3
lines changed

2 files changed

+12
-3
lines changed

src/backend/access/transam/xlog.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3481,7 +3481,10 @@ XLogFileInit(XLogSegNo logsegno, bool *use_existent, bool use_lock)
34813481
if (fd < 0)
34823482
ereport(ERROR,
34833483
(errcode_for_file_access(),
3484-
errmsg("could not open file \"%s\": %m", path)));
3484+
errmsg("could not open file \"%s\": %m", path),
3485+
(AmCheckpointerProcess() ?
3486+
errhint("This is known to fail occasionally during archive recovery, where it is harmless.") :
3487+
0)));
34853488

34863489
elog(DEBUG2, "done creating and filling new WAL file");
34873490

src/backend/storage/file/fd.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -834,7 +834,10 @@ durable_rename_excl(const char *oldfile, const char *newfile, int elevel)
834834
ereport(elevel,
835835
(errcode_for_file_access(),
836836
errmsg("could not link file \"%s\" to \"%s\": %m",
837-
oldfile, newfile)));
837+
oldfile, newfile),
838+
(AmCheckpointerProcess() ?
839+
errhint("This is known to fail occasionally during archive recovery, where it is harmless.") :
840+
0)));
838841
return -1;
839842
}
840843
unlink(oldfile);
@@ -844,7 +847,10 @@ durable_rename_excl(const char *oldfile, const char *newfile, int elevel)
844847
ereport(elevel,
845848
(errcode_for_file_access(),
846849
errmsg("could not rename file \"%s\" to \"%s\": %m",
847-
oldfile, newfile)));
850+
oldfile, newfile),
851+
(AmCheckpointerProcess() ?
852+
errhint("This is known to fail occasionally during archive recovery, where it is harmless.") :
853+
0)));
848854
return -1;
849855
}
850856
#endif

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy