Re: psql \d* and system objects

From: Bruce Momjian <bruce(at)momjian(dot)us>
To: Bruce Momjian <bruce(at)momjian(dot)us>
Cc: Robert Treat <xzilla(at)users(dot)sourceforge(dot)net>, pgsql-hackers(at)postgresql(dot)org, Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Euler Taveira de Oliveira <euler(at)timbira(dot)com>
Subject: Re: psql \d* and system objects
Date: 2009-04-02 15:21:06
Message-ID: 200904021521.n32FL6121231@momjian.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers


Attached patch applied, including documentation updates; I think this
is the best we are going to do to balance usability and consistency. I
have removed this as an open 8.4 item.

With this change \dfS and \df * do the same thing; I assume we don't
want to remove the 'S' modifier and tell people to just use '*', or
support '*' as the modifier instead of 'S', e.g. \df*.

---------------------------------------------------------------------------

Bruce Momjian wrote:
> Robert Treat wrote:
> > Actually I find the inconsistency to hurt usability, which is typically what
> > you get with inconsistent interfaces.
> >
> > I'm not certain, but I think I would be happier if we did:
> >
> > \d* user space objects
> > \d*S include system objects
> >
> > For those that want system only, do
> > \d*S pg_catalog.
> > ( if you want to argue temp/toast, adjust the search accordingly)
> >
> > I think the trick to getting this working is to enforce this with search
> > patterns *and* tab completion as well. Yes, this means that Tom's desire for
>
> I talked to Robert on IM and found two new reasons to make 'S' assumed
> if a pattern is supplied. The first is the use of tab completion:
>
> test=> \df si<tab><tab>
> sign similar_escape sin
> test=> \df sin
> List of functions
> Schema | Name | Result data type | Argument data types
> --------+------+------------------+---------------------
> (0 rows)
>
> As you can see tab-tab assumes system tables are visible, but current CVS
> does not without 'S'. The second case is:
>
> test=> \df pg_catalog.sin
> List of functions
> Schema | Name | Result data type | Argument data types
> --------+------+------------------+---------------------
> (0 rows)
>
> Only \dfS works in this case.
>
> I think we should move forward and assume 'S' for \d* patterns; it is
> inconsistent, but usability requires it.
>
> Objections?
>
> --
> Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
> EnterpriseDB http://enterprisedb.com
>
> + If your life is a hard drive, Christ can be your backup. +
>
> --
> Sent via pgsql-hackers mailing list (pgsql-hackers(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-hackers

--
Bruce Momjian <bruce(at)momjian(dot)us> http://momjian.us
EnterpriseDB http://enterprisedb.com

+ If your life is a hard drive, Christ can be your backup. +

Attachment Content-Type Size
/rtmp/diff text/x-diff 18.7 KB

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2009-04-02 15:29:45 Re: Path case sensitivity on windows
Previous Message Magnus Hagander 2009-04-02 15:03:31 Re: Path case sensitivity on windows