Re: [PATCH] Fix error message in RemoveWalSummaryIfOlderThan to indicate file removal failure

Michael Paquier <michael@paquier.xyz>

From: Michael Paquier <michael@paquier.xyz>
To: zengman <zengman@halodbtech.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>, Junwang Zhao <zhjwpku@gmail.com>
Date: 2026-02-02T03:34:03Z
Lists: pgsql-hackers
On Mon, Feb 02, 2026 at 11:02:39AM +0800, zengman wrote:
> Thank you for helping to address this! I’ve gone back and reviewed
> the code, and noticed `OpenWalSummaryFile`:
> ```
> File
> OpenWalSummaryFile(WalSummaryFile *ws, bool missing_ok)
> {
> 	char		path[MAXPGPATH];
> 	File		file;
> 
> 	snprintf(path, MAXPGPATH,
> 			 XLOGDIR "/summaries/%08X%08X%08X%08X%08X.summary",
> 			 ws->tli,
> 			 LSN_FORMAT_ARGS(ws->start_lsn),
> 			 LSN_FORMAT_ARGS(ws->end_lsn));
> 
> 	file = PathNameOpenFile(path, O_RDONLY);
> 	if (file < 0 && (errno != EEXIST || !missing_ok))
> 		ereport(ERROR,
> 				(errcode_for_file_access(),
> 				 errmsg("could not open file \"%s\": %m", path)));
> 
> 	return file;
> }
> ```
> I’m thinking of changing `errno != EEXIST` to `errno != ENOENT` here
> — would you think this adjustment is appropriate?

Funny timing.  I've spotted the exact same thing while double-checking
the file two hours ago, where EEXIST should be replaced by ENOENT.  I
was going to spawn a new thread about that with Robert in CC.
--
Michael

Commits

  1. Fix error message in RemoveWalSummaryIfOlderThan()