Re: Add Information during standby recovery conflicts

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: "Drouvot, Bertrand" <bdrouvot(at)amazon(dot)com>
Cc: Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Fujii Masao <masao(dot)fujii(at)oss(dot)nttdata(dot)com>, Masahiko Sawada <masahiko(dot)sawada(at)2ndquadrant(dot)com>, Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Add Information during standby recovery conflicts
Date: 2020-11-28 17:36:26
Message-ID: 20201128173626.GA17184@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi Bertrand,

On 2020-Nov-28, Drouvot, Bertrand wrote:

> + if (nprocs > 0)
> + {
> + ereport(LOG,
> + (errmsg("recovery still waiting after %ld.%03d ms: %s",
> + msecs, usecs, _(get_recovery_conflict_desc(reason))),
> + (errdetail_log_plural("Conflicting process: %s.",
> + "Conflicting processes: %s.",
> + nprocs, buf.data))));
> + }
> + else
> + {
> + ereport(LOG,
> + (errmsg("recovery still waiting after %ld.%03d ms: %s",
> + msecs, usecs, _(get_recovery_conflict_desc(reason)))));
> + }
> +
> + pfree(buf.data);
> + }
> + else
> + ereport(LOG,
> + (errmsg("recovery still waiting after %ld.%03d ms: %s",
> + msecs, usecs, _(get_recovery_conflict_desc(reason)))));
> +}

Another trivial stylistic point is that you can collapse all these
ereport calls into one, with something like

ereport(LOG,
errmsg("recovery still waiting after ...", opts),
waitlist != NULL ? errdetail_log_plural("foo bar baz", opts) : 0);

where the "waitlist" has been constructed beforehand, or is set to NULL
if there's no process list.

> + switch (reason)
> + {
> + case PROCSIG_RECOVERY_CONFLICT_BUFFERPIN:
> + reasonDesc = gettext_noop("for recovery conflict on buffer pin");
> + break;

Pure bikeshedding after discussing this with my pillow: I think I'd get
rid of the initial "for" in these messages.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Stephen Frost 2020-11-28 17:49:46 Re: A few new options for CHECKPOINT
Previous Message Andrey Lepikhov 2020-11-28 17:21:17 Re: Removing unneeded self joins