]> granicus.if.org Git - postgresql/commitdiff
Merge the list of statistics functions into the view documentation
authorMagnus Hagander <magnus@hagander.net>
Sat, 25 Feb 2012 14:21:04 +0000 (15:21 +0100)
committerMagnus Hagander <magnus@hagander.net>
Sat, 25 Feb 2012 14:29:11 +0000 (15:29 +0100)
Most people won't read them individually anyway, it's an easy way to find
them, and it's a lot of duplicated information if they are kept in two
different places.

doc/src/sgml/monitoring.sgml

index ffad77f04f9871ad0f4a1e7ce0d7ce91a36e22bd..3cc5d4df0038bd8660a634e4cc1b8c9dd760b423 100644 (file)
@@ -225,8 +225,9 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
    <structname>pg_stat_xact_sys_tables</>,
    <structname>pg_stat_xact_user_tables</>, and
    <structname>pg_stat_xact_user_functions</>, or via these views' underlying
-   functions.  These numbers do not act as stated above; instead they update
-   continuously throughout the transaction.
+   functions (named the same as the standard statistics functions but with the
+   prefix <function>pg_stat_get_xact_</function>).  These numbers do not act
+   as stated above; instead they update continuously throughout the transaction.
   </para>
 
   <table id="monitoring-stats-views-table">
@@ -489,6 +490,22 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
    into the kernel's handling of I/O.
   </para>
 
+  <para>
+   Other ways of looking at the statistics can be set up by writing
+   queries that use the same underlying statistics access functions as
+   these standard views do.  These functions are listed in <xref
+   linkend="monitoring-stats-funcs-table">.  The per-database access
+   functions take a database OID as argument to identify which
+   database to report on.  The per-table and per-index functions take
+   a table or index OID.  The functions for function-call statistics
+   take a function OID.  (Note that only tables, indexes, and functions
+   in the current database can be seen with these functions.)  The
+   per-server-process access functions take a server process
+   number, which ranges from one to the number of currently active
+   server processes.
+  </para>
+
+
   <table id="pg-stat-activity-view" xreflabel="pg_stat_activity">
    <title>pg_stat_activity view</title>
 
@@ -505,7 +522,9 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>datid</entry>
      <entry><type>oid</></entry>
-     <entry>The oid of the database the backend is connected to.</entry>
+     <entry>The oid of the database the backend is connected to.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_backend_dbid</function>.</entry>
     </row>
     <row>
      <entry>datname</entry>
@@ -515,12 +534,16 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>pid</entry>
      <entry><type>integer</></entry>
-     <entry>The process ID of the backend.</entry>
+     <entry>The process ID of the backend.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_backend_pid</function>.</entry>
     </row>
     <row>
      <entry>usesysid</entry>
      <entry><type>oid</></entry>
-     <entry>The id of the user logged into the backend.</entry>
+     <entry>The id of the user logged into the backend.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_backend_userid</function>.</entry>
     </row>
     <row>
      <entry>usename</entry>
@@ -540,6 +563,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       If this field is not set, it indicates that the client is either connected
       via a Unix socket on the server machine or is an internal process such
       as autovacuum.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_client_addr</function>.
      </entry>
     </row>
     <row>
@@ -557,6 +582,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry>
       The remote TCP port that the client is using for communication
       to the backend, or <symbol>NULL</> if a unix socket is used.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_client_port</function>.
      </entry>
     </row>
     <row>
@@ -565,6 +592,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry>
       The time when this process was started,  i.e. when the
       client connected to the server.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_start</function>.
      </entry>
     </row>
     <row>
@@ -574,6 +603,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       The time when the current transaction was started. If the client is
       using autocommit for transactions, this value is equal to the
       query_start column.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_xact_start</function>.
      </entry>
     </row>
     <row>
@@ -583,6 +614,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       The time when the currently active query started, or if
       <structfield>state</> is <literal>idle</>, when the last query
       was started.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_activity_start</function>.
      </entry>
     </row>
     <row>
@@ -595,6 +628,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry><type>boolean</></entry>
      <entry>
       Boolean indicating if a backend is currently waiting on a lock.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_backend_waiting</function>.
      </entry>
     </row>
     <row>
@@ -687,6 +722,18 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
    per server process, showing information related to each connection to
    the server.
   </para>
+  <para>
+   All functions used in the view are indexed by backend id number. The
+   function <function>pg_stat_get_backend_idset</function> provides a
+   convenient way to generate one row for each active server process. For
+   example, to show the <acronym>PID</>s and current queries of all server processes:
+
+<programlisting>
+SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
+       pg_stat_get_backend_activity(s.backendid) AS query
+    FROM (SELECT pg_stat_get_backend_idset() AS backendid) AS s;
+</programlisting>
+  </para>
 
   <table id="pg-stat-bgwriter-view" xreflabel="pg_stat_bgwriter">
    <title>pg_stat_bgwriter view</title>
@@ -704,33 +751,45 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <row>
       <entry>checkpoints_timed</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of scheduled checkpoints</entry>
+      <entry>Number of scheduled checkpoints.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_timed_checkpoints</function> function.</entry>
      </row>
      <row>
       <entry>checkpoints_requested</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of requested checkpoints</entry>
+      <entry>Number of requested checkpoints.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_requested_checkpoints</function> function.</entry>
      </row>
      <row>
       <entry>buffers_checkpoint</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of buffers written during checkpoints</entry>
+      <entry>Number of buffers written during checkpoints.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_buf_written_checkpoints</function> function.</entry>
      </row>
      <row>
       <entry>buffers_clean</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of buffers written by the background writer</entry>
+      <entry>Number of buffers written by the background writer.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_buf_written_clean</function> function.</entry>
      </row>
      <row>
       <entry>maxwritten_clean</entry>
       <entry><type>bigint</type></entry>
       <entry>Number of times the background writer stopped a cleaning
-      scan because it had written too many buffers</entry>
+      scan because it had written too many buffers.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_maxwritten_clean</function> function.</entry>
      </row>
      <row>
       <entry>buffers_backend</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of buffers written directly by a backend</entry>
+      <entry>Number of buffers written directly by a backend.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_buf_written_backend</function> function.</entry>
      </row>
      <row>
       <entry>buffers_backend_fsync</entry>
@@ -742,12 +801,16 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <row>
       <entry>buffers_alloc</entry>
       <entry><type>bigint</type></entry>
-      <entry>Number of buffers allocated</entry>
+      <entry>Number of buffers allocated.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_buf_alloc</function> function.</entry>
      </row>
      <row>
       <entry>stats_reset</entry>
       <entry><type>bigint</type></entry>
-      <entry>The last time these statistics were reset</entry>
+      <entry>The last time these statistics were reset.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_bgwriter_stat_reset_time</function> function.</entry>
      </row>
     </tbody>
     </tgroup>
@@ -786,54 +849,75 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry>The number of backends currently connected to this database.
      This is the only column in this view that returns a value for the
      current state, all other columns return the accumulated values since
-     the last reset.</entry>
+     the last reset. This value can also be returned by directly calling
+     the <function>pg_stat_get_db_numbackends</function> function.</entry>
     </row>
     <row>
      <entry>xact_commit</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of transactions in this database that has committed</entry>
+     <entry>The number of transactions in this database that has committed.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_xact_commit</function> function.</entry>
     </row>
     <row>
      <entry>xact_rollback</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of transactions in this database that has rolled back</entry>
+     <entry>The number of transactions in this database that has rolled back.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_xact_rollback</function> function.</entry>
     </row>
     <row>
      <entry>blks_read</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of disk blocks read in this database</entry>
+     <entry>The number of disk blocks read in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_blocks_fetched</function> and
+     <function>pg_stat_get_db_blocks_hit</function> functions and
+     subtracting the results.</entry>
     </row>
     <row>
      <entry>blks_hits</entry>
      <entry><type>bigint</></entry>
      <entry>The number of disk blocks read from the buffer cache
      (this only includes hits in the PostgreSQL buffer cache, and not
-     the operating system filesystem cache)</entry>
+     the operating system filesystem cache).
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_blocks_hit</function> function.</entry>
     </row>
     <row>
      <entry>tup_returned</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows returned by queries in this database</entry>
+     <entry>The number of rows returned by queries in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_tuples_returned</function> function.</entry>
     </row>
     <row>
      <entry>tup_fetched</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows fetched by queries in this database</entry>
+     <entry>The number of rows fetched by queries in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_tuples_fetched</function> function.</entry>
     </row>
     <row>
      <entry>tup_inserted</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows inserted by queries in this database</entry>
+     <entry>The number of rows inserted by queries in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_tuples_inserted</function> function.</entry>
     </row>
     <row>
      <entry>tup_updated</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows updated by queries in this database</entry>
+     <entry>The number of rows updated by queries in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_tuples_updated</function> function.</entry>
     </row>
     <row>
      <entry>tup_deleted</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows deleted by queries in this database</entry>
+     <entry>The number of rows deleted by queries in this database.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_db_tuples_deleted</function> function.</entry>
     </row>
     <row>
      <entry>conflicts</entry>
@@ -841,7 +925,9 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry>
       The number of queries canceled due to conflict with recovery
       (on standby servers) in this database. (See
-      <xref linkend="pg-stat-database-conflicts-view"> for more details)
+      <xref linkend="pg-stat-database-conflicts-view"> for more details).
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_all</function> function.
      </entry>
     </row>
     <row>
@@ -852,6 +938,8 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       All temporary files are counted, regardless of why the temporary file
       was created (sorting or hash) or file size, and regardless of the
       <xref linkend="guc-log-temp-files"> setting.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_db_temp_files</function> function.
      </entry>
     </row>
     <row>
@@ -862,17 +950,23 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       the database. All temporary files are counted, regardless of why
       the temporary file was created (sorting or hash) or file size, and
       regardless of the <xref linkend="guc-log-temp-files"> setting.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_db_temp_bytes</function> function.
      </entry>
     </row>
     <row>
      <entry>deadlocks</entry>
      <entry><type>bigint</></entry>
-     <entry>Number of deadlocks detected in the database</entry>
+     <entry>Number of deadlocks detected in the database.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_db_deadlocks</function> function.</entry>
     </row>
     <row>
      <entry>stats_reset</entry>
      <entry><type>timestamptz</></entry>
-     <entry>The last time the statistics were reset</entry>
+     <entry>The last time the statistics were reset.
+      This value can also be returned by directly calling
+      the <function>pg_stat_get_reset_time</function> function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -909,31 +1003,37 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
      <entry>confl_tablespace</entry>
      <entry><type>bigint</></entry>
      <entry>The number of queries that have been canceled due to
-      dropped tablespaces</entry>
+      dropped tablespaces. This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_tablespace</function> function.</entry>
     </row>
     <row>
      <entry>confl_lock</entry>
      <entry><type>bigint</></entry>
      <entry>The number of queries that have been canceled due to
-      lock timeouts</entry>
+      lock timeouts. This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_lock</function> function.</entry>
     </row>
     <row>
      <entry>confl_snapshot</entry>
      <entry><type>bigint</></entry>
      <entry>The number of queries that have been canceled due to
-      old snapshots</entry>
+      old snapshots. This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_snapshot</function> function.</entry>
     </row>
     <row>
      <entry>confl_bufferpin</entry>
      <entry><type>bigint</></entry>
      <entry>The number of queries that have been canceled due to
-      pinned buffers</entry>
+      pinned buffers. This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_bufferpin</function> function.</entry>
     </row>
     <row>
      <entry>confl_deadlock</entry>
      <entry><type>bigint</></entry>
      <entry>The number of queries that have been canceled due to
-      deadlocks</entry>
+      deadlocks. This value can also be returned by directly calling
+      the <function>pg_stat_get_db_conflict_startup_deadlock</function>
+      function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -1094,12 +1194,16 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>seq_scan</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of sequential scans initiated on this table</entry>
+     <entry>The number of sequential scans initiated on this table.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_numscans</function> function.</entry>
     </row>
     <row>
      <entry>seq_tup_read</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of live rows fetch by sequential scans</entry>
+     <entry>The number of live rows fetch by sequential scans.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_returned</function> function.</entry>
     </row>
     <row>
      <entry>idx_scan</entry>
@@ -1109,77 +1213,105 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>idx_tup_fetch</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of live rows fetch by index scans</entry>
+     <entry>The number of live rows fetch by index scans.</entry>
     </row>
     <row>
      <entry>n_tup_ins</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows inserted</entry>
+     <entry>The number of rows inserted.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_inserted</function> function.</entry>
     </row>
     <row>
      <entry>n_tup_upd</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows updated</entry>
+     <entry>The number of rows updated.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_updated</function> function.</entry>
     </row>
     <row>
      <entry>n_tup_del</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows deleted</entry>
+     <entry>The number of rows deleted.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_deleted</function> function.</entry>
     </row>
     <row>
      <entry>n_tup_hot_upd</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of rows HOT (i.e., no separate index update) updated</entry>
+     <entry>The number of rows HOT (i.e., no separate index update) updated.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_hot_updated</function> function.</entry>
     </row>
     <row>
      <entry>n_live_tup</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of live rows</entry>
+     <entry>The number of live rows.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_live_tuples</function> function.</entry>
     </row>
     <row>
      <entry>n_dead_tup</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of dead rows</entry>
+     <entry>The number of dead rows.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_dead_tuples</function> function.</entry>
     </row>
     <row>
      <entry>last_vacuum</entry>
      <entry><type>timestamp with time zone</></entry>
-     <entry>The last time the table was manually non-<option>FULL</> vacuumed</entry>
+     <entry>The last time the table was manually non-<option>FULL</> vacuumed.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_last_vacuum_time</function> function.</entry>
     </row>
     <row>
      <entry>last_autovacuum</entry>
      <entry><type>timestamp with time zone</></entry>
-     <entry>The last time the table was vacuumed by the autovacuum daemon</entry>
+     <entry>The last time the table was vacuumed by the autovacuum daemon.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_last_autovacuum_time</function> function.</entry>
     </row>
     <row>
      <entry>last_analyze</entry>
      <entry><type>timestamp with time zone</></entry>
-     <entry>The last time the table was manually analyzed</entry>
+     <entry>The last time the table was manually analyzed.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_last_analyze_time</function> function.</entry>
     </row>
     <row>
      <entry>last_autoanalyze</entry>
      <entry><type>timestamp with time zone</></entry>
-     <entry>The last time the table was analyzed by the autovacuum daemon</entry>
+     <entry>The last time the table was analyzed by the autovacuum daemon.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_last_autoanalyze_time</function> function.</entry>
     </row>
     <row>
      <entry>vacuum_count</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of times this table has been manually non-<option>FULL</> vacuumed</entry>
+     <entry>The number of times this table has been manually non-<option>FULL</> vacuumed.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_vacuum_count</function> function.</entry>
     </row>
     <row>
      <entry>autovacuum_count</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of times this table has been vacuumed by the autovacuum daemon</entry>
+     <entry>The number of times this table has been vacuumed by the autovacuum daemon.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_autovacuum_count</function> function.</entry>
     </row>
     <row>
      <entry>analyze_count</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of times this table has been manually analyzed</entry>
+     <entry>The number of times this table has been manually analyzed.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_analyze_count</function> function.</entry>
     </row>
     <row>
      <entry>autoanalyze_count</entry>
      <entry><type>bigint</></entry>
-     <entry>The number of times this table has been analyzed by the autovacuum daemon</entry>
+     <entry>The number of times this table has been analyzed by the autovacuum daemon.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_autoanalyze_count</function> function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -1234,17 +1366,23 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>idx_scan</entry>
      <entry><type>bigint</></entry>
-     <entry>Number of index scans initiated on this index</entry>
+     <entry>Number of index scans initiated on this index.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_numscans</function> function.</entry>
     </row>
     <row>
      <entry>idx_tup_read</entry>
      <entry><type>bigint</></entry>
-     <entry>Number of index entries returned by scans on this index</entry>
+     <entry>Number of index entries returned by scans on this index.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_returned</function> function.</entry>
     </row>
     <row>
      <entry>idx_tup_fetch</entry>
      <entry><type>bigint</></entry>
-     <entry>Number of live table rows fetched by simple index scans using this index</entry>
+     <entry>Number of live table rows fetched by simple index scans using this index.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_tuples_fetched</function> function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -1289,12 +1427,18 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>heap_blks_read</entry>
      <entry><type>name</></entry>
-     <entry>Number of disk blocks read from this table</entry>
+     <entry>Number of disk blocks read from this table.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_blocks_fetched</function> and
+     <function>pg_stat_get_blocks_hit</function> functions and
+     subtracting the results.</entry>
     </row>
     <row>
      <entry>heap_blks_hit</entry>
      <entry><type>name</></entry>
-     <entry>Number of buffer hits in this table</entry>
+     <entry>Number of buffer hits in this table.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_blocks_hit</function> function.</entry>
     </row>
     <row>
      <entry>idx_blks_read</entry>
@@ -1304,7 +1448,7 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>idx_blks_hit</entry>
      <entry><type>name</></entry>
-     <entry>Number of buffer hits in all indexes of this table</entry>
+     <entry>Number of buffer hits in all indexes of this table.</entry>
     </row>
     <row>
      <entry>toast_blks_read</entry>
@@ -1379,12 +1523,18 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>idx_blks_read</entry>
      <entry><type>name</></entry>
-     <entry>Number of disk blocks read from the index</entry>
+     <entry>Number of disk blocks read from the index.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_blocks_fetched</function> and
+     <function>pg_stat_get_blocks_hit</function> functions and
+     subtracting the results.</entry>
     </row>
     <row>
      <entry>idx_blks_hit</entry>
      <entry><type>name</></entry>
-     <entry>Number of buffer hits in the index</entry>
+     <entry>Number of buffer hits in the index.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_blocks_hit</function> function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -1476,19 +1626,25 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     <row>
      <entry>calls</entry>
      <entry><type>bigint</></entry>
-     <entry>Number of times the function has been called</entry>
+     <entry>Number of times the function has been called.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_function_calls</function> function.</entry>
     </row>
     <row>
      <entry>total_time</entry>
      <entry><type>bigint</></entry>
      <entry>Total time spent in this functions and all other functions
-     called by it, in milliseconds.</entry>
+     called by it, in milliseconds.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_function_time</function> function.</entry>
     </row>
     <row>
      <entry>self_time</entry>
      <entry><type>bigint</></entry>
      <entry>Total time spent in this functions itself but not including
-     other functions called by it, in milliseconds.</entry>
+     other functions called by it, in milliseconds.
+     This value can also be returned by directly calling
+     the <function>pg_stat_get_function_self_time</function> function.</entry>
     </row>
    </tbody>
    </tgroup>
@@ -1501,25 +1657,11 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
   </para>
 
  <sect3 id="monitoring-stats-functions">
-  <title>Statistics Access Functions</title>
+  <title>Other Statistics Functions</title>
 
-  <para>
-   Other ways of looking at the statistics can be set up by writing
-   queries that use the same underlying statistics access functions as
-   these standard views do.  These functions are listed in <xref
-   linkend="monitoring-stats-funcs-table">.  The per-database access
-   functions take a database OID as argument to identify which
-   database to report on.  The per-table and per-index functions take
-   a table or index OID.  The functions for function-call statistics
-   take a function OID.  (Note that only tables, indexes, and functions
-   in the current database can be seen with these functions.)  The
-   per-server-process access functions take a server process
-   number, which ranges from one to the number of currently active
-   server processes.
-  </para>
 
   <table id="monitoring-stats-funcs-table">
-   <title>Statistics Access Functions</title>
+   <title>Other Statistics Functions</title>
 
    <tgroup cols="3">
     <thead>
@@ -1531,401 +1673,6 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
     </thead>
 
     <tbody>
-     <row>
-      <entry><literal><function>pg_stat_get_db_numbackends</function>(<type>oid</type>)</literal></entry>
-      <entry><type>integer</type></entry>
-      <entry>
-       Number of active server processes for database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_xact_commit</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of transactions committed in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_xact_rollback</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of transactions rolled back in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_blocks_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block fetch requests for database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_blocks_hit</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block fetch requests found in cache for database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_tuples_returned</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of tuples returned for database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_tuples_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of tuples fetched for database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_tuples_inserted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of tuples inserted in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_tuples_updated</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of tuples updated in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_tuples_deleted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of tuples deleted in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_conflict_tablespace</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of queries canceled because of recovery conflict with dropped tablespaces in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_conflict_lock</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of queries canceled because of recovery conflict with locks in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_conflict_snapshot</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of queries canceled because of recovery conflict with old snapshots in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_conflict_bufferpin</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of queries canceled because of recovery conflict with pinned buffers in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_conflict_startup_deadlock</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of queries canceled because of recovery conflict with deadlocks in database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_stat_reset_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-       Time of the last statistics reset for the database.  Initialized to the
-       system time during the first connection to each database.  The reset time
-       is updated when you call <function>pg_stat_reset</function> on the
-       database, as well as upon execution of
-       <function>pg_stat_reset_single_table_counters</function> against any
-       table or index in it.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_temp_bytes</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Amount of data written to temporary files by queries in the database.
-       All temporary files are counted, regardless of why the temporary file
-       was created (sorting or hash), and regardless of the
-       <xref linkend="guc-log-temp-files"> setting.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_temp_files</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of temporary files written by queries in the database. All temporary
-       files are counted, regardless of why the temporary file was created
-       (sorting or hash) or file size, and regardless of the
-       <xref linkend="guc-log-temp-files"> setting.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_db_deadlocks</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of deadlocks detected in the database
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_numscans</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of sequential scans done when argument is a table,
-       or number of index scans done when argument is an index
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_returned</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows read by sequential scans when argument is a table,
-       or number of index entries returned when argument is an index
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of table rows fetched by bitmap scans when argument is a table,
-       or table rows fetched by simple index scans using the index
-       when argument is an index
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_inserted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows inserted into table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_updated</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows updated in table (includes HOT updates)
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_deleted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows deleted from table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_tuples_hot_updated</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows HOT-updated in table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_live_tuples</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of live rows in table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_dead_tuples</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of dead rows in table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_blocks_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block fetch requests for table or index
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_blocks_hit</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block requests found in cache for table or index
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_last_vacuum_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-       Time of the last non-<option>FULL</option> vacuum initiated by the user on this table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_last_autovacuum_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-       Time of the last vacuum initiated by the autovacuum daemon on this table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_last_analyze_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-       Time of the last analyze initiated by the user on this table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_last_autoanalyze_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-       Time of the last analyze initiated by the autovacuum daemon on this
-       table
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_vacuum_count</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       The number of times this table has been non-<option>FULL</> vacuumed manually
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_autovacuum_count</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       The number of times this table has been vacuumed by the autovacuum daemon
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_analyze_count</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       The number of times this table has been analyzed manually
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_autoanalyze_count</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       The number of times this table has been analyzed by the autovacuum daemon
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_numscans</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of sequential scans done when argument is a table,
-       or number of index scans done when argument is an index, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_returned</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows read by sequential scans when argument is a table,
-       or number of index entries returned when argument is an index, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of table rows fetched by bitmap scans when argument is a table,
-       or table rows fetched by simple index scans using the index
-       when argument is an index, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_inserted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows inserted into table, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_updated</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows updated in table (includes HOT updates), in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_deleted</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows deleted from table, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_tuples_hot_updated</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of rows HOT-updated in table, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_blocks_fetched</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block fetch requests for table or index, in the current transaction
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_blocks_hit</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of disk block requests found in cache for table or index, in the current transaction
-      </entry>
-     </row>
 
      <row>
        <!-- See also the entry for this in func.sgml -->
@@ -1947,59 +1694,6 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       </entry>
      </row>
 
-     <row>
-      <entry><literal><function>pg_stat_get_function_calls</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of times the function has been called
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_function_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Total wall clock time spent in the function, in microseconds.  Includes
-       the time spent in functions called by this one.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_function_self_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Time spent in only this function. Time spent in called functions
-       is excluded.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_function_calls</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of times the function has been called, in the current transaction.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_function_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Total wall clock time spent in the function, in microseconds, in the
-       current transaction.  Includes the time spent in functions called by
-       this one.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_xact_function_self_time</function>(<type>oid</type>)</literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Time spent in only this function, in the current transaction. Time
-       spent in called functions is excluded.
-      </entry>
-     </row>
-
      <row>
       <entry><literal><function>pg_stat_get_backend_idset()</function></literal></entry>
       <entry><type>setof integer</type></entry>
@@ -2009,181 +1703,6 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
       </entry>
      </row>
 
-     <row>
-      <entry><literal><function>pg_stat_get_backend_pid</function>(<type>integer</type>)</literal></entry>
-      <entry><type>integer</type></entry>
-      <entry>
-       Process ID of the given server process
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_dbid</function>(<type>integer</type>)</literal></entry>
-      <entry><type>oid</type></entry>
-      <entry>
-       Database ID of the given server process
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_userid</function>(<type>integer</type>)</literal></entry>
-      <entry><type>oid</type></entry>
-      <entry>
-       User ID of the given server process
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_activity</function>(<type>integer</type>)</literal></entry>
-      <entry><type>text</type></entry>
-      <entry>
-       Active command of the given server process, but only if the
-       current user is a superuser or the same user as that of
-       the session being queried (and
-       <varname>track_activities</varname> is on)
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_waiting</function>(<type>integer</type>)</literal></entry>
-      <entry><type>boolean</type></entry>
-      <entry>
-       True if the given server process is waiting for a lock,
-       but only if the current user is a superuser or the same user as that of
-       the session being queried (and
-       <varname>track_activities</varname> is on)
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_activity_start</function>(<type>integer</type>)</literal></entry>
-      <entry><type>timestamp with time zone</type></entry>
-      <entry>
-       The time at which the given server process' currently
-       executing query was started, but only if the
-       current user is a superuser or the same user as that of
-       the session being queried (and
-       <varname>track_activities</varname> is on)
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_xact_start</function>(<type>integer</type>)</literal></entry>
-      <entry><type>timestamp with time zone</type></entry>
-      <entry>
-       The time at which the given server process' currently
-       executing transaction was started, but only if the
-       current user is a superuser or the same user as that of
-       the session being queried (and
-       <varname>track_activities</varname> is on)
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_start</function>(<type>integer</type>)</literal></entry>
-      <entry><type>timestamp with time zone</type></entry>
-      <entry>
-       The time at which the given server process was started, or
-       null if the current user is not a superuser nor the same user
-       as that of the session being queried
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_client_addr</function>(<type>integer</type>)</literal></entry>
-      <entry><type>inet</type></entry>
-      <entry>
-       The IP address of the client connected to the given
-       server process; null if the connection is over a Unix domain
-       socket, also null if the current user is not a superuser nor
-       the same user as that of the session being queried
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_backend_client_port</function>(<type>integer</type>)</literal></entry>
-      <entry><type>integer</type></entry>
-      <entry>
-       The TCP port number of the client connected to the given
-       server process; -1 if the connection is over a Unix domain
-       socket, null if the current user is not a superuser nor the
-       same user as that of the session being queried
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_timed_checkpoints()</function></literal></entry>
-       <entry><type>bigint</type></entry>
-       <entry>
-        Number of times the background writer has started timed checkpoints
-        (because the <varname>checkpoint_timeout</varname> time has expired)
-       </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_requested_checkpoints()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of times the background writer has started checkpoints based
-       on requests from backends because the <varname>checkpoint_segments</varname>
-       has been exceeded or because the <command>CHECKPOINT</command>
-       command has been issued
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_buf_written_checkpoints()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of buffers written by the background writer during checkpoints
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_buf_written_clean()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of buffers written by the background writer for routine cleaning of
-       dirty pages
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_maxwritten_clean()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of times the background writer has stopped its cleaning scan because
-       it has written more buffers than specified in the
-       <varname>bgwriter_lru_maxpages</varname> parameter
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_bgwriter_stat_reset_time()</function></literal></entry>
-      <entry><type>timestamptz</type></entry>
-      <entry>
-        Time of the last statistics reset for the background writer, updated
-        when executing <function>pg_stat_reset_shared('bgwriter')</function>
-        on the database cluster.
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_buf_written_backend()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Number of buffers written by backends because they needed
-       to allocate a new buffer
-      </entry>
-     </row>
-
-     <row>
-      <entry><literal><function>pg_stat_get_buf_alloc()</function></literal></entry>
-      <entry><type>bigint</type></entry>
-      <entry>
-       Total number of buffer allocations
-      </entry>
-     </row>
 
      <row>
       <entry><literal><function>pg_stat_get_wal_senders()</function></literal></entry>
@@ -2243,31 +1762,6 @@ postgres: <replaceable>user</> <replaceable>database</> <replaceable>host</> <re
    </tgroup>
   </table>
 
-   <note>
-    <para>
-     <function>pg_stat_get_blocks_fetched</function> minus
-     <function>pg_stat_get_blocks_hit</function> gives the number of kernel
-     <function>read()</> calls issued for the table, index, or
-     database; the number of actual physical reads is usually
-     lower due to kernel-level buffering.  The <literal>*_blks_read</>
-     statistics columns use this subtraction, i.e., fetched minus hit.
-    </para>
-   </note>
-
-  <para>
-   All functions to access information about backends are indexed by backend id
-   number, except <function>pg_stat_get_activity</function> which is indexed by PID.
-   The function <function>pg_stat_get_backend_idset</function> provides
-   a convenient way to generate one row for each active server process.  For
-   example, to show the <acronym>PID</>s and current queries of all server processes:
-
-<programlisting>
-SELECT pg_stat_get_backend_pid(s.backendid) AS pid,
-       pg_stat_get_backend_activity(s.backendid) AS query
-    FROM (SELECT pg_stat_get_backend_idset() AS backendid) AS s;
-</programlisting>
-  </para>
-
  </sect3>
  </sect2>
  </sect1>