fixing pg_upgrade strings (was Re: pgsql: Add new files to nls.mk and add translation)

From: Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>
To: Peter Eisentraut <peter_e(at)gmx(dot)net>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: fixing pg_upgrade strings (was Re: pgsql: Add new files to nls.mk and add translation)
Date: 2017-08-03 03:47:08
Message-ID: 20170803034708.3neklemptkybqreu@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers pgsql-hackers

Peter Eisentraut wrote:
> Add new files to nls.mk and add translation markers

This reminds me that I noticed a few days ago another really serious
broken piece in pg_upgrade where check_required_directory() is incurring
in the ugliest case of string building I've ever seen. I didn't have
the courage to try to fix it back then, but I think we should dedicate
it some time. It does this:

pg_fatal("You must identify the directory where the %s.\n"
"Please use the %s command-line option or the %s environment variable.\n",
description, cmdLineOption, envVarName);

and the callsites are like this:

check_required_directory(&new_cluster.bindir, NULL, "PGBINNEW", "-B",
_("new cluster binaries reside"));
check_required_directory(&old_cluster.pgdata, &old_cluster.pgconfig,
"PGDATAOLD", "-d", _("old cluster data resides"));

note the declensions don't match even in the English original.

--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

In response to

Responses

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2017-08-03 03:59:17 Re: [COMMITTERS] pgsql: Fix pg_dump's errno checking for zlib I/O
Previous Message Peter Eisentraut 2017-08-03 02:46:12 pgsql: Add new files to nls.mk and add translation markers

Browse pgsql-hackers by date

  From Date Subject
Next Message Noah Misch 2017-08-03 03:47:40 Re: intermittent failures in Cygwin from select_parallel tests
Previous Message Etsuro Fujita 2017-08-03 03:09:56 Re: map_partition_varattnos() and whole-row vars