From: Laurenz Albe <laurenz.albe@cybertec.at>
To: Michael Paquier <michael@paquier.xyz>
Cc: pgsql-docs@lists.postgresql.org
Subject: Re: Add "io worker" as backend_type to the pg_stat_activity documentation
Date: Tue, 21 Jul 2026 11:59:07 +0200
Message-ID: <eb735d8aedf16ab2121af6f9b65b3274927afd2d.camel@cybertec.at> (raw)
In-Reply-To: <al8noIYGjD_Lyyi8@paquier.xyz>
References: <5e94c0196084f648ae6a00107125494f5804318a.camel@cybertec.at>
<al8noIYGjD_Lyyi8@paquier.xyz>
On Tue, 2026-07-21 at 17:02 +0900, Michael Paquier wrote:
> On Tue, Jul 21, 2026 at 09:58:34AM +0200, Laurenz Albe wrote:
> > I happened to notice that "io worker" was missing in the list of
> > backend types in the pg_stat_activity documentation.
>
> Right.
>
> > I wondered vaguely if the list should be sorted alphabetically,
> > but didn't do it a) to keep the patch easy to read and
> > b) because the list is not long enough for readers to get lost.
>
> And here I just thought while looking at this section of the docs that
> the list is super long, and that we could reshape it the same way as
> "state" for the possible values, sorting it on the way.
Ok, here is a patch with the list sorted alphabetically and
converted into an itemiized list.
Yours,
Laurenz Albe
Attachments:
[text/x-patch] v2-0001-Document-io-worker-as-possible-backend_type.patch (5.9K, ../eb735d8aedf16ab2121af6f9b65b3274927afd2d.camel@cybertec.at/2-v2-0001-Document-io-worker-as-possible-backend_type.patch)
download | inline diff:
From 7f53f7b1bb55e93586e4b7a1ffe25ace055d29cc Mon Sep 17 00:00:00 2001
From: Laurenz Albe <laurenz.albe@cybertec.at>
Date: Tue, 21 Jul 2026 11:58:07 +0200
Subject: [PATCH v2] Document "io worker" as possible backend_type
The documentation of pg_stat_activity lists all possible values for
the backend type, but when I/O workers were added, the list was not
amended.
Since the list is growing long, sort it alphabetically and convert
it to an itemized list.
Author: Laurenz Albe <laurenz.albe@cybertec.at>
Reviewed-By: Michael Paquier <michael@paquier.xyz>
Discussion: https://postgr.es/m/5e94c0196084f648ae6a00107125494f5804318a.camel@cybertec.at
---
doc/src/sgml/monitoring.sgml | 118 ++++++++++++++++++++++++++++++++---
1 file changed, 108 insertions(+), 10 deletions(-)
diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgmlindex d1a20d001e9..f0e15d435fb 100644--- a/doc/src/sgml/monitoring.sgml+++ b/doc/src/sgml/monitoring.sgml@@ -1057,16 +1057,114 @@ postgres 27093 0.0 0.0 30096 2752 ? Ss 11:34 0:00 postgres: ser
<structfield>backend_type</structfield> <type>text</type>
</para>
<para>
- Type of current backend. Possible types are- <literal>autovacuum launcher</literal>, <literal>autovacuum worker</literal>,- <literal>logical replication launcher</literal>,- <literal>logical replication worker</literal>,- <literal>parallel worker</literal>, <literal>background writer</literal>,- <literal>client backend</literal>, <literal>checkpointer</literal>,- <literal>archiver</literal>, <literal>standalone backend</literal>,- <literal>startup</literal>, <literal>walreceiver</literal>,- <literal>walsender</literal>, <literal>walwriter</literal> and- <literal>walsummarizer</literal>.+ Type of current backend. Possible types are:+ <itemizedlist>+ <listitem>+ <para>+ <literal>archiver</literal>: The WAL archiver, active when+ <xref linkend="guc-archive-mode"/> is <literal>on</literal>.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>autovacuum launcher</literal>: The background process that+ launches autovacuum workers, active when+ <xref linkend="guc-autovacuum"/> is <literal>on</literal>.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>autovacuum worker</literal>: A background process running+ <command>VACUUM</command> or <command>ANALYZE</command> on a single+ table.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>background writer</literal>: The background process that+ makes sure that there are enough clean buffers in shared buffers.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>checkpointer</literal>: The background process that+ performs <link linkend="wal-configuration">checkpoints</link>+ regularly.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>client backend</literal>: The server process performing+ work for a regular database connection.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>io worker</literal>: A background process performing+ asynchronous I/O, active when <xref linkend="guc-io-method"/> is set+ to <literal>worker</literal>.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>logical replication launcher</literal>: The background+ process that launches logical replication worker processes for+ subscriptions.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>logical replication worker</literal>: A background process+ that applies data modifications replicated with logical replication.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>parallel worker</literal>: A background process that helps+ a backend process to perform operations in parallel.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>standalone backend</literal>: The backend process when+ <productname>PostgreSQL</productname> was started in+ <xref linkend="app-postgres-single-user"/>.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>startup</literal>: The background process that replays WAL+ during crash recovery, archive recovery or streaming replication.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>walreceiver</literal>: The background process that receives+ WAL records from a WAL sender, active in streaming replication+ standby mode.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>walsender</literal>: A background process that sends WAL+ records to receivers (during streaming replication) or decodes WAL+ and sends the decoded information (during logical replication).+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>walsummarizer</literal>: The background process that+ creates summaries from WAL for use with incremental backup, active+ when <xref linkend="guc-summarize-wal"/> is <literal>on</literal>.+ </para>+ </listitem>+ <listitem>+ <para>+ <literal>walwriter</literal>: The background process that persists+ WAL records from WAL buffers to disk.+ </para>+ </listitem>+ </itemizedlist>
In addition, background workers registered by extensions may have
additional types.
</para></entry>
--
2.55.0
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-docs@postgresql.org
Cc: laurenz.albe@cybertec.at, michael@paquier.xyz, pgsql-docs@lists.postgresql.org
Subject: Re: Add "io worker" as backend_type to the pg_stat_activity documentation
In-Reply-To: <eb735d8aedf16ab2121af6f9b65b3274927afd2d.camel@cybertec.at>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox