From: Michael Paquier Date: Sun, 6 Apr 2025 06:14:52 +0000 (+0900) Subject: Revert "Add HINT for restartpoint race with KeepFileRestoredFromArchive()." X-Git-Tag: REL_14_18~28 X-Git-Url: http://git.postgresql.org/gitweb/?a=commitdiff_plain;h=47d2d29827293ed46f3641d8843ce5b5823d26e4;p=postgresql.git Revert "Add HINT for restartpoint race with KeepFileRestoredFromArchive()." This reverts commit 8ad6c5dbbe5a, which was a commit specific to v14 and older branches as the race condition between restartpoints and KeepFileRestoredFromArchive() still existed. 1f95181b44c8 has worsened the situation on these two branches, causing spurious failures in archive recovery (neither streaming nor archive recovery) with concurrent restartpoints. The same logic as v15 and newer versions will be applied in some follow-up commits to close this problem, making this HINT not necessary anymore. Reported-by: Arun Thirupathi Discussion: https://postgr.es/m/20250306193013.36.nmisch@google.com Backpatch-through: 13 --- diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index d8629547090..793451bdf70 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -3468,10 +3468,7 @@ XLogFileInit(XLogSegNo logsegno, bool *added) if (fd < 0) ereport(ERROR, (errcode_for_file_access(), - errmsg("could not open file \"%s\": %m", path), - (AmCheckpointerProcess() ? - errhint("This is known to fail occasionally during archive recovery, where it is harmless.") : - 0))); + errmsg("could not open file \"%s\": %m", path))); elog(DEBUG2, "done creating and filling new WAL file"); diff --git a/src/backend/storage/file/fd.c b/src/backend/storage/file/fd.c index 09c4a93e40b..484a07302a4 100644 --- a/src/backend/storage/file/fd.c +++ b/src/backend/storage/file/fd.c @@ -834,10 +834,7 @@ durable_rename_excl(const char *oldfile, const char *newfile, int elevel) ereport(elevel, (errcode_for_file_access(), errmsg("could not link file \"%s\" to \"%s\": %m", - oldfile, newfile), - (AmCheckpointerProcess() ? - errhint("This is known to fail occasionally during archive recovery, where it is harmless.") : - 0))); + oldfile, newfile))); return -1; } unlink(oldfile); @@ -847,10 +844,7 @@ durable_rename_excl(const char *oldfile, const char *newfile, int elevel) ereport(elevel, (errcode_for_file_access(), errmsg("could not rename file \"%s\" to \"%s\": %m", - oldfile, newfile), - (AmCheckpointerProcess() ? - errhint("This is known to fail occasionally during archive recovery, where it is harmless.") : - 0))); + oldfile, newfile))); return -1; } #endif