On 2026-Feb-10, Kyotaro Horiguchi wrote:

Hello,

> 0006: 
> In extended_stats_funcs.c:
> > errmsg("could not find extended statistics object \"%s\".\"%s\"",
> >        quote_identifier(nspname),
> >        quote_identifier(stxname)));
> 
> Since quote_identifier() already adds quoting when needed, adding
> "%s"."%s" in the format string results in double quoting. It would be
> better to use %s.%s instead.  I think quoting should be applied only
> when necessary here. I'm not sure we should use
> quote_qualified_identifier() instead.. (It's not used in the attached
> patch).
> 
> There's a similar inconsistency.
> 
> >     errmsg("could not clear extended statistics object \"%s\".\"%s\": 
> > incorrect relation \"%s\".\"%s\" specified",
> >                get_namespace_name(nspoid), stxname,
> >                relnspname, relname));
> 
> In this part, the names are not passed through quote_identifier().  It
> would be better to unify this as well.

Hmm, in the vast majority of messages, the quotes are in the literal
string, and we do not add quote_identifier().  This way, the names are
always quoted, not just when they are funny identifiers; also the
translator chooses the quoting style they want, which is not necessarily
the same as the one used in English.

So my recommendation would be to remove the quote_identifier() calls and
leave the quotes in the message.

-- 
Álvaro Herrera               48°01'N 7°57'E  —  https://www.EnterpriseDB.com/


Reply via email to