Re: One-shot expanded output in psql using \G

From: Stephen Frost <sfrost(at)snowman(dot)net>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>, Christoph Berg <christoph(dot)berg(at)credativ(dot)de>, Daniel Verite <daniel(at)manitou-mail(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: One-shot expanded output in psql using \G
Date: 2017-01-30 16:06:03
Message-ID: 20170130160603.GF9812@tamriel.snowman.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

David,

* David G. Johnston (david(dot)g(dot)johnston(at)gmail(dot)com) wrote:
> On Mon, Jan 30, 2017 at 8:35 AM, Stephen Frost <sfrost(at)snowman(dot)net> wrote:
> > * Tom Lane (tgl(at)sss(dot)pgh(dot)pa(dot)us) wrote:
> > > Stephen Frost <sfrost(at)snowman(dot)net> writes:
> > > > This particular bike-shedding really doesn't seem to be terribly useful
> > > > or sensible, to me. \gx isn't "consistent" or "descriptive", frankly.
> > >
> > > Why not? To me it reads as "\g with an x option". The "x" refers to
> > > the implied "\x", so it's not an arbitrary choice at all.
> >
> > That's not how '\dx' works, as I pointed out, so I don't see having the
> > second character being 'x' to imply "\x mode" makes sense.
>
> It makes perfect sense ... it just not something that we've had the option
> to do before (no, I haven't tried to figure out if we've missed an
> opportunity or two here).

For my 2c, at least, I think we have.. I could certainly see it as very
useful to have expanded output for \d and various \d sub-commands. How
are we going to get there today? I don't see us re-defining what \dx
means.

With this, what we could do is define \D to be the same as \d but in
expanded mode. For something like \dp, having a \Dp option could be
pretty nice.

> > without actual consistency across commands which take 'x'
> > as a sub-command I don't see the 'descriptive' argument as holding much
> > weight either
> > ​.
>
> Arguing that something is mnemonic doesn't require any precedence - though
> one could wish for better uses of mnemonic naming choices for past and
> future items.

I can see the mnemonic argument, just not one based on some kind of
consistency with what we've actually got implemented today.

> In scripting uses of psql I could see wanting to use "\gx" and, say "\gn"
> (i.e., always output in non-expanded mode) instead of ";" so that for any
> given query I can specify the exact layout I care about and don't have to
> jump through hoops to toggle \x back and forth.

Ugh. I would *much* rather scripting be clear and set things up ahead
of time instead of changing a would-be query-ending ';' into a backslash
command to indicate the output format for the prior query.

> Limiting consideration of the use-case of this feature to interactive use
> is, IMHO, a mistake. In the copious use of psql scripting that I do I
> would find both options I named above to be useful to directly and
> concisely communicate the display intent of each query I execute.

I'm afraid we might just have to disagree on our preferences for script
writing then. In any case, as I said up-thread, using \G for this
doesn't mean we couldn't make other \g options if people have a use-case
for them.

Thanks!

Stephen

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alvaro Herrera 2017-01-30 16:12:16 Re: multivariate statistics (v19)
Previous Message Tom Lane 2017-01-30 15:56:07 Re: Performance improvement for joins where outer side is unique