Re: list of extended statistics on psql

From: Julien Rouhaud <rjuju123(at)gmail(dot)com>
To: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
Cc: Tatsuro Yamada <tatsuro(dot)yamada(dot)tf(at)nttcom(dot)co(dot)jp>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: list of extended statistics on psql
Date: 2020-08-24 05:54:36
Message-ID: CAOBaU_YAwz99psuJ6WJWk6k4H-K7BH61NbCTqL3o4Zhg2=D7Bw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Aug 24, 2020 at 6:13 AM Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> wrote:
>
> po 24. 8. 2020 v 5:23 odesílatel Tatsuro Yamada <tatsuro(dot)yamada(dot)tf(at)nttcom(dot)co(dot)jp> napsal:
>>
>> Hi!
>>
>> I created a POC patch that allows showing a list of extended statistics by
>> "\dz" command on psql. I believe this feature helps DBA and users who
>> would like to know all extended statistics easily. :-D
>>
>> I have not a strong opinion to assign "\dz". I prefer "\dx" or "\de*"
>> than "\dz" but they were already assigned. Therefore I used "\dz"
>> instead of them.
>>
>> Please find the attached patch.
>> Any comments are welcome!
>>
>> For Example:
>> =======================
>> CREATE TABLE t1 (a INT, b INT);
>> CREATE STATISTICS stts1 (dependencies) ON a, b FROM t1;
>> CREATE STATISTICS stts2 (dependencies, ndistinct) ON a, b FROM t1;
>> CREATE STATISTICS stts3 (dependencies, ndistinct, mcv) ON a, b FROM t1;
>> ANALYZE t1;
>>
>> CREATE TABLE t2 (a INT, b INT, c INT);
>> CREATE STATISTICS stts4 ON b, c FROM t2;
>> ANALYZE t2;
>>
>> postgres=# \dz
>> List of extended statistics
>> Schema | Table | Name | Columns | Ndistinct | Dependencies | MCV
>> --------+-------+-------+---------+-----------+--------------+-----
>> public | t1 | stts1 | a, b | f | t | f
>> public | t1 | stts2 | a, b | t | t | f
>> public | t1 | stts3 | a, b | t | t | t
>> public | t2 | stts4 | b, c | t | t | t
>> (4 rows)
>>
>> postgres=# \?
>> ...
>> \dy [PATTERN] list event triggers
>> \dz [PATTERN] list extended statistics
>> \l[+] [PATTERN] list databases
>> ...
>> =======================
>>
>> For now, I haven't written a document and regression test for that.
>> I'll create it later.
>
>
> +1 good idea

+1 that's a good idea. Please add it to the next commitfest!

You have a typo:

+ if (pset.sversion < 10000)
+ {
+ char sverbuf[32];
+
+ pg_log_error("The server (version %s) does not support
extended statistics.",
+ formatPGVersionNumber(pset.sversion, false,
+ sverbuf, sizeof(sverbuf)));
+ return true;
+ }

the version test is missing a 0, the feature looks otherwise ok.

How about using \dX rather than \dz?

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Dilip Kumar 2020-08-24 06:12:12 Re: Re: [HACKERS] Custom compression methods
Previous Message Fujii Masao 2020-08-24 05:48:50 Re: Creating a function for exposing memory usage of backend process