From 2ef085d0e6960f5087c97266a7211d37ddaa9f68 Mon Sep 17 00:00:00 2001 From: Fujii Masao Date: Thu, 4 Jul 2013 03:24:09 +0900 Subject: Get rid of pg_class.reltoastidxid. Treat TOAST index just the same as normal one and get the OID of TOAST index from pg_index but not pg_class.reltoastidxid. This change allows us to handle multiple TOAST indexes, and which is required infrastructure for upcoming REINDEX CONCURRENTLY feature. Patch by Michael Paquier, reviewed by Andres Freund and me. --- doc/src/sgml/catalogs.sgml | 9 --------- doc/src/sgml/diskusage.sgml | 26 +++++++++++++------------- doc/src/sgml/monitoring.sgml | 4 ++-- 3 files changed, 15 insertions(+), 24 deletions(-) (limited to 'doc/src') diff --git a/doc/src/sgml/catalogs.sgml b/doc/src/sgml/catalogs.sgml index 09f7e40b29f..67157829fdf 100644 --- a/doc/src/sgml/catalogs.sgml +++ b/doc/src/sgml/catalogs.sgml @@ -1744,15 +1744,6 @@ - - reltoastidxid - oid - pg_class.oid - - For a TOAST table, the OID of its index. 0 if not a TOAST table. - - - relhasindex bool diff --git a/doc/src/sgml/diskusage.sgml b/doc/src/sgml/diskusage.sgml index de1d0b4b00b..461deb9dbad 100644 --- a/doc/src/sgml/diskusage.sgml +++ b/doc/src/sgml/diskusage.sgml @@ -20,12 +20,12 @@ stored. If the table has any columns with potentially-wide values, there also might be a TOAST file associated with the table, which is used to store values too wide to fit comfortably in the main - table (see ). There will be one index on the - TOAST table, if present. There also might be indexes associated - with the base table. Each table and index is stored in a separate disk - file — possibly more than one file, if the file would exceed one - gigabyte. Naming conventions for these files are described in . + table (see ). There will be one valid index + on the TOAST table, if present. There also might be indexes + associated with the base table. Each table and index is stored in a + separate disk file — possibly more than one file, if the file would + exceed one gigabyte. Naming conventions for these files are described + in . @@ -44,7 +44,7 @@ SELECT pg_relation_filepath(oid), relpages FROM pg_class WHERE relname = 'customer'; - pg_relation_filepath | relpages + pg_relation_filepath | relpages ----------------------+---------- base/16384/16806 | 60 (1 row) @@ -65,12 +65,12 @@ FROM pg_class, FROM pg_class WHERE relname = 'customer') AS ss WHERE oid = ss.reltoastrelid OR - oid = (SELECT reltoastidxid - FROM pg_class - WHERE oid = ss.reltoastrelid) + oid = (SELECT indexrelid + FROM pg_index + WHERE indrelid = ss.reltoastrelid) ORDER BY relname; - relname | relpages + relname | relpages ----------------------+---------- pg_toast_16806 | 0 pg_toast_16806_index | 1 @@ -87,7 +87,7 @@ WHERE c.relname = 'customer' AND c2.oid = i.indexrelid ORDER BY c2.relname; - relname | relpages + relname | relpages ----------------------+---------- customer_id_indexdex | 26 @@ -101,7 +101,7 @@ SELECT relname, relpages FROM pg_class ORDER BY relpages DESC; - relname | relpages + relname | relpages ----------------------+---------- bigtable | 3290 customer | 3144 diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index b37b6c301cb..d38c009db3a 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -1163,12 +1163,12 @@ postgres: user database host tidx_blks_read bigint - Number of disk blocks read from this table's TOAST table index (if any) + Number of disk blocks read from this table's TOAST table indexes (if any) tidx_blks_hit bigint - Number of buffer hits in this table's TOAST table index (if any) + Number of buffer hits in this table's TOAST table indexes (if any) -- cgit v1.2.3