Home Explore Blog CI



postgresql

3rd chunk of `doc/src/sgml/glossary.sgml`
1adb4c729feccecf55836f06b9864951d6d6ba1f3506d50c0000000100000fa4
 <glossterm linkend="glossary-instance">instance</glossterm>
     that is in charge of some specific background task for the instance.
     The auxiliary processes consist of <!-- in alphabetical order -->
     <!-- NB: In the code, the autovac launcher doesn't use the auxiliary
          process scaffolding; however it does behave as one so we list it
          here anyway. In addition, logger isn't connected to shared memory so
          most code outside postmaster.c doesn't even consider it a "proc" in
          the first place.
          -->
     the <glossterm linkend="glossary-autovacuum">autovacuum launcher</glossterm>
     (but not the autovacuum workers),
     the <glossterm linkend="glossary-background-writer">background writer</glossterm>,
     the <glossterm linkend="glossary-checkpointer">checkpointer</glossterm>,
     the <glossterm linkend="glossary-logger">logger</glossterm>,
     the <glossterm linkend="glossary-startup-process">startup process</glossterm>,
     the <glossterm linkend="glossary-wal-archiver">WAL archiver</glossterm>,
     the <glossterm linkend="glossary-wal-receiver">WAL receiver</glossterm>
     (but not the <glossterm linkend="glossary-wal-sender">WAL senders</glossterm>),
     the <glossterm linkend="glossary-wal-summarizer">WAL summarizer</glossterm>,
     and the <glossterm linkend="glossary-wal-writer">WAL writer</glossterm>.
    </para>
   </glossdef>
  </glossentry>

  <glossentry id="glossary-backend">
   <glossterm>Backend (process)</glossterm>
   <glossdef>
    <para>
     Process of an <glossterm linkend="glossary-instance">instance</glossterm>
     which acts on behalf of a <glossterm linkend="glossary-session">client session</glossterm>
     and handles its requests.
    </para>
    <para>
     (Don't confuse this term with the similar terms
     <glossterm linkend="glossary-background-worker">Background Worker</glossterm> or
     <glossterm linkend="glossary-background-writer">Background Writer</glossterm>).
    </para>
   </glossdef>
  </glossentry>

  <glossentry id="glossary-background-worker">
   <glossterm>Background worker (process)</glossterm>
   <glossdef>
    <para>
     Process within an <glossterm linkend="glossary-instance">instance</glossterm>,
     which runs system- or user-supplied code.
     Serves as infrastructure for several features in
     <productname>PostgreSQL</productname>, such as
     <glossterm linkend="glossary-replication">logical replication</glossterm>
     and <glossterm linkend="glossary-parallel-query">parallel queries</glossterm>.
     In addition, <glossterm linkend="glossary-extension">Extensions</glossterm> can add
     custom background worker processes.
   </para>
   <para>
    For more information, see
    <xref linkend="bgworker"/>.
   </para>
   </glossdef>
  </glossentry>

  <glossentry id="glossary-background-writer">
   <glossterm>Background writer (process)</glossterm>
   <glossdef>
    <para>
     An <glossterm linkend="glossary-auxiliary-proc">auxiliary process</glossterm>
     that writes dirty
     <glossterm linkend="glossary-data-page">data pages</glossterm> from
     <glossterm linkend="glossary-shared-memory">shared memory</glossterm> to
     the file system.  It wakes up periodically, but works only for a short
     period in order to distribute its expensive <acronym>I/O</acronym>
     activity over time to avoid generating larger
     <acronym>I/O</acronym> peaks which could block other processes.
    </para>
    <para>
     For more information, see
     <xref linkend="runtime-config-resource-background-writer"/>.
    </para>
   </glossdef>
  </glossentry>

  <glossentry id="glossary-basebackup">
   <glossterm>Base Backup</glossterm>
   <glossdef>
    <para>
     A binary copy of all
     <glossterm linkend="glossary-db-cluster">database cluster</glossterm>
     files. It is generated by the tool <xref linkend="app-pgbasebackup"/>.
     In combination with WAL files it can be used as the starting point
     for recovery,

Title: Auxiliary Processes in PostgreSQL
Summary
This section describes auxiliary processes in PostgreSQL, which are specialized background tasks within an instance. These processes include the autovacuum launcher, background writer, checkpointer, logger, startup process, WAL archiver, WAL receiver, WAL summarizer, and WAL writer. The text also defines backend processes, which handle client session requests, and background worker processes, which run system or user-supplied code for features like logical replication and parallel queries. Additionally, it explains the background writer process, which periodically writes dirty data pages from shared memory to the file system to distribute I/O activity.