Re: Better client reporting for "immediate stop" shutdowns

From: Andres Freund <andres(at)anarazel(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-hackers(at)lists(dot)postgresql(dot)org
Subject: Re: Better client reporting for "immediate stop" shutdowns
Date: 2020-12-28 19:14:28
Message-ID: 20201228191428.p5bhcvd4ixsuyifd@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On 2020-12-28 13:25:14 -0500, Tom Lane wrote:
> The most straightforward way to do that is to introduce a new error
> level. Having to renumber existing levels is a bit of a pain, but
> I'm not aware of anything that should break in source-code terms.
> We make similar ABI breaks in every major release.

I don't see a problem either.

> /* Select default errcode based on elevel */
> if (elevel >= ERROR)
> edata->sqlerrcode = ERRCODE_INTERNAL_ERROR;
> - else if (elevel == WARNING)
> + else if (elevel >= WARNING)
> edata->sqlerrcode = ERRCODE_WARNING;
> else
> edata->sqlerrcode = ERRCODE_SUCCESSFUL_COMPLETION;

> @@ -2152,6 +2157,7 @@ write_eventlog(int level, const char *line, int len)
> eventlevel = EVENTLOG_INFORMATION_TYPE;
> break;
> case WARNING:
> + case WARNING_CLIENT_ONLY:
> eventlevel = EVENTLOG_WARNING_TYPE;
> break;
> case ERROR:
> [...]

I don't think it needs to be done right now, but I again want to suggest
it'd be nice if we split log levels into a bitmask. If we bits, separate
from the log level, for do-not-log-to-client and do-not-log-to-server
some of this code would imo look nicer.

Looks good to me.

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2020-12-28 20:01:50 Re: Better client reporting for "immediate stop" shutdowns
Previous Message Tom Lane 2020-12-28 18:25:14 Re: Better client reporting for "immediate stop" shutdowns