diff options
author | Michael Paquier <michael@paquier.xyz> | 2019-08-23 20:41:22 +0900 |
---|---|---|
committer | Michael Paquier <michael@paquier.xyz> | 2019-08-23 20:41:22 +0900 |
commit | 1fb2d78cb94672f4cfc0c1a2da9e0a534e3698f2 (patch) | |
tree | df2d182fdad69317b608653662f627f5233a66a0 | |
parent | 73ef3df16dfa8d8a85dc16bcc515ce131fef9540 (diff) |
Improve documentation of pageinspect
This adds a section for heap-related functions. These were previously
mixed with functions having a more general purpose, leading to
confusion. While on it, add a query example for fsm_page_contents.
Backpatch down to 10, where b5e3942 introduced the subsections for
function types in pageinspect documentation.
Author: Masahiko Sawada
Discussion: https://postgr.es/m/CAD21AoDyM7E1+cK3-aWejxKTGC-wVVP2B+RnJhN6inXyeRmqzw@mail.gmail.com
Backpatch-through: 10
-rw-r--r-- | doc/src/sgml/pageinspect.sgml | 56 |
1 files changed, 33 insertions, 23 deletions
diff --git a/doc/src/sgml/pageinspect.sgml b/doc/src/sgml/pageinspect.sgml index 2ec2d957a31..442b926717c 100644 --- a/doc/src/sgml/pageinspect.sgml +++ b/doc/src/sgml/pageinspect.sgml @@ -127,6 +127,39 @@ test=# SELECT page_checksum(get_raw_page('pg_class', 0), 0); <varlistentry> <term> + <function>fsm_page_contents(page bytea) returns text</function> + <indexterm> + <primary>fsm_page_contents</primary> + </indexterm> + </term> + + <listitem> + <para> + <function>fsm_page_contents</function> shows the internal node structure + of a FSM page. For example: +<screen> +test=# SELECT fsm_page_contents(get_raw_page('pg_class', 'fsm', 0)); +</screen> + The output is a multiline string, with one line per node in the binary + tree within the page. Only those nodes that are not zero are printed. + The so-called "next" pointer, which points to the next slot to be + returned from the page, is also printed. + </para> + <para> + See <filename>src/backend/storage/freespace/README</> for more + information on the structure of an FSM page. + </para> + </listitem> + </varlistentry> + </variablelist> + </sect2> + + <sect2> + <title>Heap Functions</title> + + <variablelist> + <varlistentry> + <term> <function>heap_page_items(page bytea) returns setof record</function> <indexterm> <primary>heap_page_items</primary> @@ -203,29 +236,6 @@ test=# SELECT * FROM heap_page_item_attrs(get_raw_page('pg_class', 0), 'pg_class </para> </listitem> </varlistentry> - - <varlistentry> - <term> - <function>fsm_page_contents(page bytea) returns text</function> - <indexterm> - <primary>fsm_page_contents</primary> - </indexterm> - </term> - - <listitem> - <para> - <function>fsm_page_contents</function> shows the internal node structure - of a FSM page. The output is a multiline string, with one line per - node in the binary tree within the page. Only those nodes that are not - zero are printed. The so-called "next" pointer, which points to the - next slot to be returned from the page, is also printed. - </para> - <para> - See <filename>src/backend/storage/freespace/README</> for more - information on the structure of an FSM page. - </para> - </listitem> - </varlistentry> </variablelist> </sect2> |