Re: convert elog(LOG) calls to ereport

Alvaro Herrera <alvherre@alvh.no-ip.org>

From: Alvaro Herrera <alvherre@alvh.no-ip.org>
To: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2020-12-02T14:04:45Z
Lists: pgsql-hackers
On 2020-Dec-02, Peter Eisentraut wrote:

> There are a number of elog(LOG) calls that appear to be user-facing, so they
> should be ereport()s.  This patch changes them.  There are more elog(LOG)
> calls remaining, but they all appear to be some kind of debugging support.
> Also, I changed a few elog(FATAL)s that were nearby, but I didn't
> specifically look for them.

> -		elog(LOG, "WSAIoctl(SIO_KEEPALIVE_VALS) failed: %ui",
> -			 WSAGetLastError());
> +		ereport(LOG,
> +				(errmsg("WSAIoctl(SIO_KEEPALIVE_VALS) failed: %ui",
> +						WSAGetLastError())));

Please take the opportunity to move the flag name out of the message in
this one, also.  I do wonder if it'd be a good idea to move the syscall
name itself out of the message, too; that would reduce the number of
messages to translate 50x to just "%s(%s) failed: %m" instead of one
message per distinct syscall.

Should fd.c messages do errcode_for_file_access() like elsewhere?

Overall, it looks good to me.

Thanks




Commits

  1. Factor out system call names from error messages

  2. Convert elog(LOG) calls to ereport() where appropriate