]> granicus.if.org Git - postgresql/commitdiff
Remove pg_stats_ext view
authorAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 13 Apr 2017 14:35:22 +0000 (11:35 -0300)
committerAlvaro Herrera <alvherre@alvh.no-ip.org>
Thu, 13 Apr 2017 14:35:22 +0000 (11:35 -0300)
It was created as equivalent of pg_stats, but since the code underlying
pg_statistic_ext is more convenient than the one for pg_statistic,
pg_stats_ext is no longer useful.

Author: David Rowley
Reviewed-by: Tomas Vondra
Discussion: https://postgr.es/m/CAKJS1f9zAkPUf9nQrqpFBAsrOHvb5eYa2FVNsmCJy1wegcO_TQ@mail.gmail.com

doc/src/sgml/planstats.sgml
src/backend/catalog/system_views.sql
src/test/regress/expected/rules.out

index f8af42f394a5cf08bfcb1c793757949adc1bcda3..a4f91c737afd798f1cc4d9d8473fcdf6cde5aa03 100644 (file)
@@ -520,17 +520,15 @@ EXPLAIN ANALYZE SELECT * FROM t WHERE a = 1 AND b = 1;
 
    <para>
     Similarly to per-column statistics, extended statistics are stored in
-    a system catalog called <structname>pg_statistic_ext</structname>, but
-    there is also a more convenient view <structname>pg_stats_ext</structname>.
+    a system catalog called <structname>pg_statistic_ext</structname>.
     To inspect the statistics <literal>s1</literal> defined above,
     you may do this:
 
 <programlisting>
-SELECT tablename, staname, attnums, depsbytes
-  FROM pg_stats_ext WHERE staname = 's1';
- tablename | staname | attnums | depsbytes 
------------+---------+---------+-----------
- t         | s1      | 1 2     |        40
+SELECT staname,stadependencies FROM pg_statistic_ext WHERE staname = 's1';
+ staname |              stadependencies
+---------+--------------------------------------------
+ s1      | [{1 => 2 : 1.000000}, {2 => 1 : 1.000000}]
 (1 row)
 </programlisting>
 
index 500221ae7709e5e043072e65c53ef186fe970d19..421d51db471ad3c7ad3ac13648b2cb51a4c83280 100644 (file)
@@ -186,17 +186,6 @@ CREATE OR REPLACE VIEW pg_sequences AS
     WHERE NOT pg_is_other_temp_schema(N.oid)
           AND relkind = 'S';
 
-CREATE VIEW pg_stats_ext AS
-    SELECT
-        N.nspname AS schemaname,
-        C.relname AS tablename,
-        S.staname AS staname,
-        S.stakeys AS attnums,
-        length(s.standistinct::bytea) AS ndistbytes,
-        length(S.stadependencies::bytea) AS depsbytes
-    FROM (pg_statistic_ext S JOIN pg_class C ON (C.oid = S.starelid))
-        LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace);
-
 CREATE VIEW pg_stats WITH (security_barrier) AS
     SELECT
         nspname AS schemaname,
index b2779d9698a50afd1a392abe428e7d103a5a5966..409692d6957e7fa7ac1ec25cb5e704afa4487d59 100644 (file)
@@ -2188,15 +2188,6 @@ pg_stats| SELECT n.nspname AS schemaname,
      JOIN pg_attribute a ON (((c.oid = a.attrelid) AND (a.attnum = s.staattnum))))
      LEFT JOIN pg_namespace n ON ((n.oid = c.relnamespace)))
   WHERE ((NOT a.attisdropped) AND has_column_privilege(c.oid, a.attnum, 'select'::text) AND ((c.relrowsecurity = false) OR (NOT row_security_active(c.oid))));
-pg_stats_ext| SELECT n.nspname AS schemaname,
-    c.relname AS tablename,
-    s.staname,
-    s.stakeys AS attnums,
-    length((s.standistinct)::bytea) AS ndistbytes,
-    length((s.stadependencies)::bytea) AS depsbytes
-   FROM ((pg_statistic_ext s
-     JOIN pg_class c ON ((c.oid = s.starelid)))
-     LEFT JOIN pg_namespace n ON ((n.oid = c.relnamespace)));
 pg_tables| SELECT n.nspname AS schemaname,
     c.relname AS tablename,
     pg_get_userbyid(c.relowner) AS tableowner,