From: | "Daniel Verite" <daniel(at)manitou-mail(dot)org> |
---|---|
To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | pgsql-hackers(at)lists(dot)postgresql(dot)org |
Subject: | Re: Doc patch on psql output formats |
Date: | 2018-11-06 17:18:37 |
Message-ID: | ee4f3cb3-fdb2-4097-b679-4db1652ee3b0@manitou-mail.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Tom Lane wrote:
> > When a non-unique abbreviation is used, psql uses the first
> > match in an arbitrary order defined in do_pset() by
> > a cascade of pg_strncasecmp().
>
> Ugh. Should we not fix the code so that it complains if there's
> not a unique match? I would bet that the code was also written
> on the assumption that any abbrevation must be unique.
There's a backward compatibility issue, since a script issuing
\pset format a
would now fail instead of setting the format to "aligned".
The doc patch is meant to describe the current behavior.
OTOH if we don't fail with non-unique matches, there is the risk that
in the future, a new format matching /^a/ will come alphabetically
before "aligned", and will be picked up instead of "aligned".
In both cases using abbreviations in scripts is not a great
idea. Anyway I will look into the changes required in do_pset to
implement the error on multiple matches, if that's the preferred
behavior.
Best regards,
--
Daniel Vérité
PostgreSQL-powered mailer: http://www.manitou-mail.org
Twitter: @DanielVerite
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2018-11-06 17:18:38 | Re: pg_dump multi VALUES INSERT |
Previous Message | Alvaro Herrera | 2018-11-06 17:16:01 | Re: BUG #15212: Default values in partition tables don't work as expected and allow NOT NULL violation |