pg.ddx.io  pgsql-hackers@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: David Fetter <david@fetter.org>
To: Fabien COELHO <fabien.coelho@mines-paristech.fr>
Cc: Rafia Sabih <rafia.pghackers@gmail.com>
Cc: PostgreSQL Development <pgsql-hackers@postgresql.org>
Subject: Re: [PATCH v5] Show detailed table persistence in \dt+
Date: Mon, 29 Apr 2019 06:19:02 +0200
Message-ID: <20190429041902.GC2954@fetter.org> (raw)
In-Reply-To: <alpine.DEB.2.21.1904281917330.29865@lancre>
References: <20190424062623.GF28936@fetter.org>
	<alpine.DEB.2.21.1904240949080.27327@lancre>
	<CA+FpmFdx2aDtyiVD2av9+QAunA1L5uscm3dL1SFbcOs8-W678g@mail.gmail.com>
	<CA+FpmFeurtDiutfh2yv0T4S=zY0iegcSStR-5xJ9H7vP2XKQsg@mail.gmail.com>
	<20190427041849.GL28936@fetter.org>
	<alpine.DEB.2.21.1904270844180.29865@lancre>
	<20190427174330.GN28936@fetter.org>
	<alpine.DEB.2.21.1904272214030.29865@lancre>
	<20190428151541.GQ28936@fetter.org>
	<alpine.DEB.2.21.1904281917330.29865@lancre>

On Sun, Apr 28, 2019 at 07:26:55PM +0200, Fabien COELHO wrote:
> 
> Hello David,
> 
> > > Patch applies. There seems to be a compilation issue:
> > > 
> > >  describe.c:5974:1: error: expected declaration or statement at end of
> > >  input
> > >   }
> > 
> > This is in brown paper bag territory. Fixed.
> 
> I do not understand why you move both size and description out of the
> verbose mode, it should be there only when under verbose?

My mistake. Fixed.

> > I've sent a separate patch extracted from the one you sent which adds
> > stdin to our TAP testing infrastructure. I hope it lands so it'll be
> > simpler to add these tests in a future version of the patch.
> 
> Why not. As I'm the one who wrote the modified function, probably I could
> have thought of providing an input. I'm not sure it is worth a dedicated
> submission, could go together with any commit that would use it.

My hope is that this is seen as a bug fix and gets back-patched.

Best,
David.
-- 
David Fetter <david(at)fetter(dot)org> http://fetter.org/
Phone: +1 415 235 3778

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate

Attachments:

v6-0001-Show-detailed-table-persistence-in-dt.patch (text/x-diff, 2.1K) download From ddc5dddccb275bffbb06d9bc2a5e60eced84a151 Mon Sep 17 00:00:00 2001 From: David Fetter <david.fetter@onelogin.com> Date: Mon, 22 Apr 2019 17:50:48 -0700 Subject: [PATCH v6] Show detailed table persistence in \dt+ To: hackers MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="------------2.20.1" This is a multi-part message in MIME format. --------------2.20.1 Content-Type: text/plain; charset=UTF-8; format=fixed Content-Transfer-Encoding: 8bit \d would show this for individual tables, but there wasn't an overarching view of all tables. Now, there is. diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c index ee00c5da08..46b1fad52d 100644 --- a/src/bin/psql/describe.c +++ b/src/bin/psql/describe.c @@ -3631,7 +3631,7 @@ listTables(const char *tabtypes, const char *pattern, bool verbose, bool showSys PQExpBufferData buf; PGresult *res; printQueryOpt myopt = pset.popt; - static const bool translate_columns[] = {false, false, true, false, false, false, false}; + static const bool translate_columns[] = {false, false, true, false, false, false, false, false}; /* If tabtypes is empty, we default to \dtvmsE (but see also command.c) */ if (!(showTables || showIndexes || showViews || showMatViews || showSeq || showForeign)) @@ -3679,6 +3679,22 @@ listTables(const char *tabtypes, const char *pattern, bool verbose, bool showSys if (verbose) { + /* + * Show whether a table is permanent, temporary, or unlogged. + * Indexes are not, as of this writing, tables. + */ + if (!showIndexes) + { + if (pset.sversion >= 90100) + appendPQExpBuffer(&buf, + ",\n CASE c.relpersistence WHEN 'p' THEN 'permanent' WHEN 't' THEN 'temporary' WHEN 'u' THEN 'unlogged' ELSE 'unknown' END as \"%s\"", + gettext_noop("Persistence")); + else if (pset.sversion >= 80400) + appendPQExpBuffer(&buf, + ",\n CASE WHEN c.relistemp THEN 'temporary' ELSE 'permanent' END as \"%s\"", + gettext_noop("Persistence")); + } + /* * As of PostgreSQL 9.0, use pg_table_size() to show a more accurate * size of a table, including FSM, VM and TOAST tables. --------------2.20.1--

view thread (19+ messages)  latest in thread

Message-ID: <20190429041902.GC2954@fetter.org>
Permalink:  ../20190429041902.GC2954@fetter.org/
Also on:    postgresql.org/message-id/20190429041902.GC2954@fetter.org

 ·  · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-hackers@postgresql.org
  Cc: david@fetter.org, fabien.coelho@mines-paristech.fr, rafia.pghackers@gmail.com
  Subject: Re: [PATCH v5] Show detailed table persistence in \dt+
  In-Reply-To: <20190429041902.GC2954@fetter.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox