Commit 756abe2b authored by Alvaro Herrera's avatar Alvaro Herrera

Review of the glossary

Add some more terms, clarify some definitions, remove redundant terms,
move a couple of terms to keep alphabetical order.
Co-authored-by: default avatarJürgen Purtz <juergen@purtz.de>
Co-authored-by: default avatarErik Rijkers <er@xs4all.nl>
Co-authored-by: default avatarLaurenz Albe <laurenz.albe@cybertec.at>
Discussion: https://postgr.es/m/7b9b469e804777ac9df4d37716db935e@xs4all.nl
parent 6755b618
...@@ -7,8 +7,23 @@ ...@@ -7,8 +7,23 @@
</para> </para>
<glosslist> <glosslist>
<glossentry id="glossary-acid">
<glossterm>ACID</glossterm>
<glossdef>
<para>
<glossterm linkend="glossary-atomicity">Atomicity</glossterm>,
<glossterm linkend="glossary-consistency">Consistency</glossterm>,
<glossterm linkend="glossary-isolation">Isolation</glossterm>, and
<glossterm linkend="glossary-durability">Durability</glossterm>.
This set of properties of database transactions is intended to
guarantee validity in concurrent operation and even in event of
errors, power failures, etc.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-aggregate"> <glossentry id="glossary-aggregate">
<glossterm>Aggregate Function</glossterm> <glossterm>Aggregate function</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-function">function</glossterm> that A <glossterm linkend="glossary-function">function</glossterm> that
...@@ -35,11 +50,15 @@ ...@@ -35,11 +50,15 @@
to make decisions about how to execute to make decisions about how to execute
<glossterm linkend="glossary-query">queries</glossterm>. <glossterm linkend="glossary-query">queries</glossterm>.
</para> </para>
<para>
(Don't confuse this term with the <literal>ANALYZE</literal> option
to the <xref linkend="sql-explain"/> command.)
</para>
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry> <glossentry>
<glossterm>Analytic Function</glossterm> <glossterm>Analytic function</glossterm>
<glosssee otherterm="glossary-window-function" /> <glosssee otherterm="glossary-window-function" />
</glossentry> </glossentry>
...@@ -106,8 +125,8 @@ ...@@ -106,8 +125,8 @@
<glossdef> <glossdef>
<para> <para>
Process of an <glossterm linkend="glossary-instance">instance</glossterm> Process of an <glossterm linkend="glossary-instance">instance</glossterm>
which act on behalf of <glossterm linkend="glossary-session">client sessions</glossterm> which acts on behalf of a <glossterm linkend="glossary-session">client session</glossterm>
and handle their requests. and handles its requests.
</para> </para>
<para> <para>
(Don't confuse this term with the similar terms (Don't confuse this term with the similar terms
...@@ -118,7 +137,7 @@ ...@@ -118,7 +137,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-background-worker"> <glossentry id="glossary-background-worker">
<glossterm>Background Worker (process)</glossterm> <glossterm>Background worker (process)</glossterm>
<glossdef> <glossdef>
<para> <para>
Process within an <glossterm linkend="glossary-instance">instance</glossterm>, Process within an <glossterm linkend="glossary-instance">instance</glossterm>,
...@@ -138,10 +157,11 @@ ...@@ -138,10 +157,11 @@
</glossentry> </glossentry>
<glossentry id="glossary-background-writer"> <glossentry id="glossary-background-writer">
<glossterm>Background Writer (process)</glossterm> <glossterm>Background writer (process)</glossterm>
<glossdef> <glossdef>
<para> <para>
A process that continuously writes dirty pages from A process that writes dirty
<glossterm linkend="glossary-data-page">data pages</glossterm> from
<glossterm linkend="glossary-shared-memory">shared memory</glossterm> to <glossterm linkend="glossary-shared-memory">shared memory</glossterm> to
the file system. It wakes up periodically, but works only for a short the file system. It wakes up periodically, but works only for a short
period in order to distribute its expensive <acronym>I/O</acronym> period in order to distribute its expensive <acronym>I/O</acronym>
...@@ -155,6 +175,16 @@ ...@@ -155,6 +175,16 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-bloat">
<glossterm>Bloat</glossterm>
<glossdef>
<para>
Space in data pages which does not contain current row versions,
such as unused (free) space or outdated row versions.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-cast"> <glossentry id="glossary-cast">
<glossterm>Cast</glossterm> <glossterm>Cast</glossterm>
<glossdef> <glossdef>
...@@ -190,7 +220,7 @@ ...@@ -190,7 +220,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-check-constraint"> <glossentry id="glossary-check-constraint">
<glossterm>Check Constraint</glossterm> <glossterm>Check constraint</glossterm>
<glossdef> <glossdef>
<para> <para>
A type of <glossterm linkend="glossary-constraint">constraint</glossterm> A type of <glossterm linkend="glossary-constraint">constraint</glossterm>
...@@ -208,15 +238,6 @@ ...@@ -208,15 +238,6 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-checkpointer">
<glossterm>Checkpointer (process)</glossterm>
<glossdef>
<para>
A specialized process responsible for executing checkpoints.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-checkpoint"> <glossentry id="glossary-checkpoint">
<glossterm>Checkpoint</glossterm> <glossterm>Checkpoint</glossterm>
<glossdef> <glossdef>
...@@ -244,6 +265,15 @@ ...@@ -244,6 +265,15 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-checkpointer">
<glossterm>Checkpointer (process)</glossterm>
<glossdef>
<para>
A specialized process responsible for executing checkpoints.
</para>
</glossdef>
</glossentry>
<glossentry> <glossentry>
<glossterm>Class (archaic)</glossterm> <glossterm>Class (archaic)</glossterm>
<glosssee otherterm="glossary-relation" /> <glosssee otherterm="glossary-relation" />
...@@ -262,27 +292,6 @@ ...@@ -262,27 +292,6 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-cluster">
<glossterm>Cluster</glossterm>
<glossdef>
<para>
A group of <glossterm linkend="glossary-database">databases</glossterm> plus their
<glossterm linkend="glossary-global-sql-object">global SQL objects</glossterm>. The
<firstterm>cluster</firstterm> is managed by exactly one
<glossterm linkend="glossary-instance">instance</glossterm>. A newly created
Cluster will have three databases created automatically. They are
<literal>template0</literal>, <literal>template1</literal>, and
<literal>postgres</literal>. It is expected that an application will
create one or more additional database aside from these three.
</para>
<para>
(Don't confuse the <productname>PostgreSQL</productname>-specific term
<glossterm linkend="glossary-cluster">Cluster</glossterm> with the SQL
command <command>CLUSTER</command>).
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-column"> <glossentry id="glossary-column">
<glossterm>Column</glossterm> <glossterm>Column</glossterm>
<glossdef> <glossdef>
...@@ -363,7 +372,10 @@ ...@@ -363,7 +372,10 @@
<glossdef> <glossdef>
<para> <para>
A restriction on the values of data allowed within a A restriction on the values of data allowed within a
<glossterm linkend="glossary-table">Table</glossterm>. <glossterm linkend="glossary-table">table</glossterm>,
or in attributes of a
<!-- XXX Should have term "domain". Need term "type" for that. -->
<firstterm>domain</firstterm>.
</para> </para>
<para> <para>
For more information, see For more information, see
...@@ -373,19 +385,19 @@ ...@@ -373,19 +385,19 @@
</glossentry> </glossentry>
<glossentry> <glossentry>
<glossterm>Data Area</glossterm> <glossterm>Data area</glossterm>
<glosssee otherterm="glossary-data-directory" /> <glosssee otherterm="glossary-data-directory" />
</glossentry> </glossentry>
<glossentry id="glossary-data-directory"> <glossentry id="glossary-data-directory">
<glossterm>Data Directory</glossterm> <glossterm>Data directory</glossterm>
<glossdef> <glossdef>
<para> <para>
The base directory on the filesystem of a The base directory on the filesystem of a
<glossterm linkend="glossary-server">server</glossterm> that contains all <glossterm linkend="glossary-server">server</glossterm> that contains all
data files and subdirectories associated with a data files and subdirectories associated with an
<glossterm linkend="glossary-cluster">cluster</glossterm> with the <glossterm linkend="glossary-instance">instance</glossterm> (with the
exception of <glossterm linkend="glossary-tablespace">tablespaces</glossterm>. exception of <glossterm linkend="glossary-tablespace">tablespaces</glossterm>).
The environment variable <literal>PGDATA</literal> is commonly used to The environment variable <literal>PGDATA</literal> is commonly used to
refer to the refer to the
<glossterm linkend="glossary-data-directory">data directory</glossterm>. <glossterm linkend="glossary-data-directory">data directory</glossterm>.
...@@ -416,15 +428,31 @@ ...@@ -416,15 +428,31 @@
</glossentry> </glossentry>
<glossentry> <glossentry>
<glossterm>Database Server</glossterm> <glossterm>Database server</glossterm>
<glosssee otherterm="glossary-instance" /> <glosssee otherterm="glossary-instance" />
</glossentry> </glossentry>
<glossentry id="glossary-data-page">
<glossterm>Data page</glossterm>
<glossdef>
<para>
The basic structure used to store relation data.
All pages are of the same size.
Data pages are typically stored on disk, each in a specific file,
and can be read to <glossterm linkend="glossary-shared-memory">shared buffers</glossterm>
where they can be modified, becoming
<firstterm>dirty</firstterm>. They become clean when written
to disk. New pages, which initially exist in memory only, are also
dirty until written.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-datum"> <glossentry id="glossary-datum">
<glossterm>Datum</glossterm> <glossterm>Datum</glossterm>
<glossdef> <glossdef>
<para> <para>
The internal representation of one value of a <acronym>SQL</acronym> The internal representation of one value of an <acronym>SQL</acronym>
data type. data type.
</para> </para>
</glossdef> </glossdef>
...@@ -434,7 +462,7 @@ ...@@ -434,7 +462,7 @@
<glossterm>Delete</glossterm> <glossterm>Delete</glossterm>
<glossdef> <glossdef>
<para> <para>
A <acronym>SQL</acronym> command which removes An <acronym>SQL</acronym> command which removes
<glossterm linkend="glossary-tuple">rows</glossterm> from a given <glossterm linkend="glossary-tuple">rows</glossterm> from a given
<glossterm linkend="glossary-table">table</glossterm> <glossterm linkend="glossary-table">table</glossterm>
or <glossterm linkend="glossary-relation">relation</glossterm>. or <glossterm linkend="glossary-relation">relation</glossterm>.
...@@ -459,6 +487,11 @@ ...@@ -459,6 +487,11 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry>
<glossterm>Epoch</glossterm>
<glosssee otherterm="glossary-xid" />
</glossentry>
<glossentry id="glossary-extension"> <glossentry id="glossary-extension">
<glossterm>Extension</glossterm> <glossterm>Extension</glossterm>
<glossdef> <glossdef>
...@@ -475,12 +508,13 @@ ...@@ -475,12 +508,13 @@
</glossentry> </glossentry>
<glossentry id="glossary-file-segment"> <glossentry id="glossary-file-segment">
<glossterm>File Segment</glossterm> <glossterm>File segment</glossterm>
<glossdef> <glossdef>
<para> <para>
A physical file which stores data for a given A physical file which stores data for a given
<glossterm linkend="glossary-relation">relation</glossterm>. <glossterm linkend="glossary-relation">relation</glossterm>.
File segments are limited in size by a configuration value, File segments are limited in size by a configuration value
(typically 1 gigabyte),
so if a relation exceeds that size, it is split into multiple segments. so if a relation exceeds that size, it is split into multiple segments.
</para> </para>
<para> <para>
...@@ -495,14 +529,14 @@ ...@@ -495,14 +529,14 @@
</glossentry> </glossentry>
<glossentry id="glossary-foreign-data-wrapper"> <glossentry id="glossary-foreign-data-wrapper">
<glossterm>Foreign Data Wrapper</glossterm> <glossterm>Foreign data wrapper</glossterm>
<glossdef> <glossdef>
<para> <para>
A means of representing data that is not contained in the local A means of representing data that is not contained in the local
<glossterm linkend="glossary-database">database</glossterm> so that it appears as if were in local <glossterm linkend="glossary-database">database</glossterm> so that it appears as if were in local
<glossterm linkend="glossary-table">table(s)</glossterm>. With a Foreign Data Wrapper it is <glossterm linkend="glossary-table">table(s)</glossterm>. With a foreign data wrapper it is
possible to define a <glossterm linkend="glossary-foreign-server">foreign server</glossterm> and possible to define a <glossterm linkend="glossary-foreign-server">foreign server</glossterm> and
<glossterm linkend="glossary-foreign-table">foreign table</glossterm>s. <glossterm linkend="glossary-foreign-table">foreign tables</glossterm>.
</para> </para>
<para> <para>
For more information, see For more information, see
...@@ -512,7 +546,7 @@ ...@@ -512,7 +546,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-foreign-key"> <glossentry id="glossary-foreign-key">
<glossterm>Foreign Key</glossterm> <glossterm>Foreign key</glossterm>
<glossdef> <glossdef>
<para> <para>
A type of <glossterm linkend="glossary-constraint">constraint</glossterm> A type of <glossterm linkend="glossary-constraint">constraint</glossterm>
...@@ -527,7 +561,7 @@ ...@@ -527,7 +561,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-foreign-server"> <glossentry id="glossary-foreign-server">
<glossterm>Foreign Server</glossterm> <glossterm>Foreign server</glossterm>
<glossdef> <glossdef>
<para> <para>
A named collection of A named collection of
...@@ -544,7 +578,7 @@ ...@@ -544,7 +578,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-foreign-table"> <glossentry id="glossary-foreign-table">
<glossterm>Foreign Table</glossterm> <glossterm>Foreign table</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-relation">relation</glossterm> which appears to have A <glossterm linkend="glossary-relation">relation</glossterm> which appears to have
...@@ -564,34 +598,49 @@ ...@@ -564,34 +598,49 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-function"> <glossentry id="glossary-fork">
<glossterm>Function</glossterm> <glossterm>Fork</glossterm>
<glossdef> <glossdef>
<para> <para>
Any defined transformation of data. Many functions are already defined Each of the separate segmented file sets in which a relation is stored.
within <productname>PostgreSQL</productname> itself, but user-defined The <firstterm>main fork</firstterm> is where the actual data resides.
ones can also be added. There also exist two secondary forks for metadata:
the <glossterm linkend="glossary-fsm">free space map</glossterm>
and the <glossterm linkend="glossary-vm">visibility map</glossterm>.
<glossterm linkend="glossary-unlogged">Unlogged relations</glossterm>
also have an <firstterm>init fork</firstterm>.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-fsm">
<glossterm>Free space map (fork)</glossterm>
<glossdef>
<para>
A storage structure that keeps metadata about each data page of a table's
main fork. The free space map entry for each page stores the
amount of free space that's available for future tuples, and is structured
to be efficiently searched for available space for a new tuple of a given
size.
</para> </para>
<para> <para>
For more information, see For more information, see
<xref linkend="sql-createfunction"/>. <xref linkend="storage-fsm"/>.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-global-sql-object"> <glossentry id="glossary-function">
<glossterm>Global SQL Object</glossterm> <glossterm>Function</glossterm>
<glossdef> <glossdef>
<para> <para>
<glossterm linkend="glossary-sql-object">SQL objects</glossterm> which do Any defined transformation of data. Many functions are already defined
not belong to a specific within <productname>PostgreSQL</productname> itself, but user-defined
<glossterm linkend="glossary-database">database</glossterm>. ones can also be added.
</para> </para>
<para> <para>
These objects are For more information, see
<glossterm linkend="glossary-role">roles</glossterm>, <xref linkend="sql-createfunction"/>.
<glossterm linkend="glossary-tablespace">tablespaces</glossterm>,
replication origins, and subscriptions for logical replication.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -600,7 +649,7 @@ ...@@ -600,7 +649,7 @@
<glossterm>Grant</glossterm> <glossterm>Grant</glossterm>
<glossdef> <glossdef>
<para> <para>
A <acronym>SQL</acronym> command that is used to allow An <acronym>SQL</acronym> command that is used to allow
<glossterm linkend="glossary-user">users</glossterm> or <glossterm linkend="glossary-user">users</glossterm> or
<glossterm linkend="glossary-role">role</glossterm> to access <glossterm linkend="glossary-role">role</glossterm> to access
specific objects within the <glossterm linkend="glossary-database">database</glossterm>. specific objects within the <glossterm linkend="glossary-database">database</glossterm>.
...@@ -619,8 +668,9 @@ ...@@ -619,8 +668,9 @@
Contains the values of <glossterm linkend="glossary-tuple">row</glossterm> Contains the values of <glossterm linkend="glossary-tuple">row</glossterm>
attributes (i.e. the data) for a attributes (i.e. the data) for a
<glossterm linkend="glossary-relation">relation</glossterm>. <glossterm linkend="glossary-relation">relation</glossterm>.
The heap is realized within The heap is realized within one of more
<glossterm linkend="glossary-file-segment">segment files</glossterm>. <glossterm linkend="glossary-file-segment">file segments</glossterm>
in the relation's <glossterm linkend="glossary-fork">main fork</glossterm>.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -629,10 +679,11 @@ ...@@ -629,10 +679,11 @@
<glossterm>Host</glossterm> <glossterm>Host</glossterm>
<glossdef> <glossdef>
<para> <para>
A computer that communicates with other hosts over a network. A computer that communicates with other computers over a network.
This term can be used to refer to either a This is sometimes used as a synonym for
<glossterm linkend="glossary-client">client</glossterm> <glossterm linkend="glossary-server">server</glossterm>.
or a <glossterm linkend="glossary-server">server</glossterm>. It is also used to refer to a computer where
<glossterm linkend="glossary-client">client processes</glossterm> run.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -659,7 +710,7 @@ ...@@ -659,7 +710,7 @@
<glossterm>Insert</glossterm> <glossterm>Insert</glossterm>
<glossdef> <glossdef>
<para> <para>
A <acronym>SQL</acronym> command used to add new data into a An <acronym>SQL</acronym> command used to add new data into a
<glossterm linkend="glossary-table">table</glossterm>. <glossterm linkend="glossary-table">table</glossterm>.
</para> </para>
<para> <para>
...@@ -673,27 +724,28 @@ ...@@ -673,27 +724,28 @@
<glossterm>Instance</glossterm> <glossterm>Instance</glossterm>
<glossdef> <glossdef>
<para> <para>
An <glossterm>instance</glossterm> is a group of processes, A set of databases and accompanying global SQL objects that are stored in
its supporting <glossterm linkend="glossary-data-directory">storage space</glossterm>, the same <glossterm linkend="glossary-data-directory">data directory</glossterm>
plus their in a single <glossterm linkend="glossary-server">server</glossterm>.
common <glossterm linkend="glossary-shared-memory">shared memory</glossterm>, If running, one
running on a single <glossterm linkend="glossary-server">server</glossterm>. <glossterm linkend="glossary-postmaster">postmaster process</glossterm>
The <glossterm linkend="glossary-instance">instance</glossterm> manages a group of backend and auxiliary processes that communicate
handles all key features of a <acronym>DBMS</acronym>: read and write using a common <glossterm linkend="glossary-shared-memory">shared memory</glossterm>
access to files and shared memory, assurance of area. Many instances can run on the same
the <acronym>ACID</acronym> paradigm, <acronym>MVCC</acronym>, <glossterm linkend="glossary-server">server</glossterm>
<glossterm linkend="glossary-connection">connections</glossterm> to client programs, backup, as long as their <acronym>TCP</acronym> ports do not conflict.
recovery, replication, privileges, etc.
</para> </para>
<para> <para>
An <glossterm>instance</glossterm> manages exactly one The instance handles all key features of a <acronym>DBMS</acronym>:
<glossterm linkend="glossary-cluster">cluster</glossterm>. read and write access to files and shared memory,
assurance of the <acronym>ACID</acronym> properties,
<glossterm linkend="glossary-connection">connections</glossterm> to client processes,
privilege verification, crash recovery, replication, etc.
</para> </para>
<para> <para>
Many <glossterm>instances</glossterm> can run on the same server as In <productname>PostgreSQL</productname>, the term
long as their <acronym>TCP/IP</acronym> ports do not conflict. <firstterm>cluster</firstterm> is also sometimes used to refer to an instance.
Different instances on a server may use the (Don't confuse this term with the SQL command <command>CLUSTER</command>.)
same or different versions of <productname>PostgreSQL</productname>.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -717,7 +769,7 @@ ...@@ -717,7 +769,7 @@
<glossterm>Join</glossterm> <glossterm>Join</glossterm>
<glossdef> <glossdef>
<para> <para>
A <acronym>SQL</acronym> keyword used in <command>SELECT</command> statements for An <acronym>SQL</acronym> keyword used in <command>SELECT</command> statements for
combining data from multiple <glossterm linkend="glossary-relation">relations</glossterm>. combining data from multiple <glossterm linkend="glossary-relation">relations</glossterm>.
</para> </para>
</glossdef> </glossdef>
...@@ -748,7 +800,7 @@ ...@@ -748,7 +800,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-log-file"> <glossentry id="glossary-log-file">
<glossterm>Log File</glossterm> <glossterm>Log file</glossterm>
<glossdef> <glossdef>
<para> <para>
Log files contain human-readable text lines about events. Log files contain human-readable text lines about events.
...@@ -761,27 +813,8 @@ ...@@ -761,27 +813,8 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-logger">
<glossterm>Logger (process)</glossterm>
<glossdef>
<para>
If activated, the
<glossterm linkend="glossary-logger">Logger</glossterm> process
writes information about database events into the current
<glossterm linkend="glossary-log-file">log file</glossterm>.
When reaching certain time- or
volume-dependent criteria, a new log file is created.
Also called <firstterm>syslogger</firstterm>.
</para>
<para>
For more information, see
<xref linkend="runtime-config-logging"/>.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-log-record"> <glossentry id="glossary-log-record">
<glossterm>Log Record</glossterm> <glossterm>Log record</glossterm>
<glossdef> <glossdef>
<para> <para>
Archaic term for a <glossterm linkend="glossary-wal-record">WAL record</glossterm>. Archaic term for a <glossterm linkend="glossary-wal-record">WAL record</glossterm>.
...@@ -803,6 +836,25 @@ ...@@ -803,6 +836,25 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-logger">
<glossterm>Logger (process)</glossterm>
<glossdef>
<para>
If activated, the
<glossterm linkend="glossary-logger">Logger</glossterm> process
writes information about database events into the current
<glossterm linkend="glossary-log-file">log file</glossterm>.
When reaching certain time- or
volume-dependent criteria, a new log file is created.
Also called <firstterm>syslogger</firstterm>.
</para>
<para>
For more information, see
<xref linkend="runtime-config-logging"/>.
</para>
</glossdef>
</glossentry>
<glossentry> <glossentry>
<glossterm>Master (server)</glossterm> <glossterm>Master (server)</glossterm>
<glosssee otherterm="glossary-primary-server" /> <glosssee otherterm="glossary-primary-server" />
...@@ -831,7 +883,7 @@ ...@@ -831,7 +883,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-materialized-view"> <glossentry id="glossary-materialized-view">
<glossterm>Materialized View</glossterm> <glossterm>Materialized view</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-relation">relation</glossterm> that is A <glossterm linkend="glossary-relation">relation</glossterm> that is
...@@ -869,8 +921,8 @@ ...@@ -869,8 +921,8 @@
<glossterm>Null</glossterm> <glossterm>Null</glossterm>
<glossdef> <glossdef>
<para> <para>
A concept of non-existence that is a central tenet of Relational A concept of non-existence that is a central tenet of relational
Database Theory. It represents the absence of value. database theory. It represents the absence of a definite value.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -881,7 +933,7 @@ ...@@ -881,7 +933,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-parallel-query"> <glossentry id="glossary-parallel-query">
<glossterm>Parallel Query</glossterm> <glossterm>Parallel query</glossterm>
<glossdef> <glossdef>
<para> <para>
The ability to handle parts of executing a The ability to handle parts of executing a
...@@ -918,7 +970,7 @@ ...@@ -918,7 +970,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-partitioned-table"> <glossentry id="glossary-partitioned-table">
<glossterm>Partitioned Table</glossterm> <glossterm>Partitioned table</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-relation">relation</glossterm> that is A <glossterm linkend="glossary-relation">relation</glossterm> that is
...@@ -960,7 +1012,7 @@ ...@@ -960,7 +1012,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-primary-key"> <glossentry id="glossary-primary-key">
<glossterm>Primary Key</glossterm> <glossterm>Primary key</glossterm>
<glossdef> <glossdef>
<para> <para>
A special case of a A special case of a
...@@ -1011,7 +1063,7 @@ ...@@ -1011,7 +1063,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-planner"> <glossentry id="glossary-planner">
<glossterm>Query Planner</glossterm> <glossterm>Query planner</glossterm>
<glossdef> <glossdef>
<para> <para>
The part of <productname>PostgreSQL</productname> that is devoted to The part of <productname>PostgreSQL</productname> that is devoted to
...@@ -1034,7 +1086,7 @@ ...@@ -1034,7 +1086,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-referential-integrity"> <glossentry id="glossary-referential-integrity">
<glossterm>Referential Integrity</glossterm> <glossterm>Referential integrity</glossterm>
<glossdef> <glossdef>
<para> <para>
A means of restricting data in one <glossterm linkend="glossary-relation">relation</glossterm> A means of restricting data in one <glossterm linkend="glossary-relation">relation</glossterm>
...@@ -1055,9 +1107,11 @@ ...@@ -1055,9 +1107,11 @@
<glossterm linkend="glossary-attribute">attributes</glossterm> <glossterm linkend="glossary-attribute">attributes</glossterm>
defined in a specific order. defined in a specific order.
<glossterm linkend="glossary-table">Tables</glossterm>, <glossterm linkend="glossary-table">Tables</glossterm>,
<glossterm linkend="glossary-sequence">sequences</glossterm>,
<glossterm linkend="glossary-view">views</glossterm>, <glossterm linkend="glossary-view">views</glossterm>,
<glossterm linkend="glossary-foreign-table">foreign tables</glossterm>, <glossterm linkend="glossary-foreign-table">foreign tables</glossterm>,
<glossterm linkend="glossary-materialized-view">materialized views</glossterm>, and <glossterm linkend="glossary-materialized-view">materialized views</glossterm>,
composite types, and
<glossterm linkend="glossary-index">indexes</glossterm> are all relations. <glossterm linkend="glossary-index">indexes</glossterm> are all relations.
</para> </para>
<para> <para>
...@@ -1068,7 +1122,7 @@ ...@@ -1068,7 +1122,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-replica"> <glossentry id="glossary-replica">
<glossterm>Replica</glossterm> <glossterm>Replica (server)</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-database">database</glossterm> that is paired A <glossterm linkend="glossary-database">database</glossterm> that is paired
...@@ -1098,12 +1152,13 @@ ...@@ -1098,12 +1152,13 @@
</glossentry> </glossentry>
<glossentry id="glossary-result-set"> <glossentry id="glossary-result-set">
<glossterm>Result Set</glossterm> <glossterm>Result set</glossterm>
<glossdef> <glossdef>
<para> <para>
A data structure transmitted from a A data structure transmitted from a
<glossterm linkend="glossary-backend">backend process</glossterm> to <glossterm linkend="glossary-backend">backend process</glossterm> to
client program upon the completion of a <acronym>SQL</acronym> a <glossterm linkend="glossary-client">client</glossterm> upon the
completion of an <acronym>SQL</acronym>
command, usually a <command>SELECT</command> but it can be an command, usually a <command>SELECT</command> but it can be an
<command>INSERT</command>, <command>UPDATE</command>, or <command>INSERT</command>, <command>UPDATE</command>, or
<command>DELETE</command> command if the <literal>RETURNING</literal> <command>DELETE</command> command if the <literal>RETURNING</literal>
...@@ -1135,7 +1190,7 @@ ...@@ -1135,7 +1190,7 @@
<para> <para>
A collection of access privileges to the A collection of access privileges to the
<glossterm linkend="glossary-database">instance</glossterm>. <glossterm linkend="glossary-database">instance</glossterm>.
Roless are themselves a privilege that can be granted to other roles. Roles are themselves a privilege that can be granted to other roles.
This is often done for convenience or to ensure completeness This is often done for convenience or to ensure completeness
when multiple <glossterm linkend="glossary-user">users</glossterm> need when multiple <glossterm linkend="glossary-user">users</glossterm> need
the same privileges. the same privileges.
...@@ -1170,7 +1225,7 @@ ...@@ -1170,7 +1225,7 @@
<glossterm>Savepoint</glossterm> <glossterm>Savepoint</glossterm>
<glossdef> <glossdef>
<para> <para>
A special mark inside the sequence of steps in a A special mark in the sequence of steps in a
<glossterm linkend="glossary-transaction">transaction</glossterm>. <glossterm linkend="glossary-transaction">transaction</glossterm>.
Data modifications after this point in time may be reverted Data modifications after this point in time may be reverted
to the time of the savepoint. to the time of the savepoint.
...@@ -1186,13 +1241,15 @@ ...@@ -1186,13 +1241,15 @@
<glossterm>Schema</glossterm> <glossterm>Schema</glossterm>
<glossdef> <glossdef>
<para> <para>
A schema is a namespace for <glossterm linkend="glossary-sql-object">SQL objects</glossterm>, A schema is a namespace for
<glossterm linkend="glossary-sql-object">SQL objects</glossterm>,
which all reside in the same which all reside in the same
<glossterm linkend="glossary-database">database</glossterm>. Each <glossterm linkend="glossary-database">database</glossterm>.
SQL object must reside in exactly one schema. Each SQL object must reside in exactly one schema.
</para> </para>
<para> <para>
The names of SQL objects of the same type in the same schema are enforced unique. The names of SQL objects of the same type in the same schema are enforced
to be unique.
There is no restriction on reusing a name in multiple schemas. There is no restriction on reusing a name in multiple schemas.
</para> </para>
<para> <para>
...@@ -1205,7 +1262,7 @@ ...@@ -1205,7 +1262,7 @@
</glossdef> </glossdef>
<glossdef> <glossdef>
<para> <para>
More generically, the term <firstterm>Schema</firstterm> is used to mean More generically, the term <firstterm>schema</firstterm> is used to mean
all data descriptions (<glossterm linkend="glossary-table">table</glossterm> definitions, all data descriptions (<glossterm linkend="glossary-table">table</glossterm> definitions,
<glossterm linkend="glossary-constraint">constraints</glossterm>, comments, etc) <glossterm linkend="glossary-constraint">constraints</glossterm>, comments, etc)
for a given <glossterm linkend="glossary-database">database</glossterm> or for a given <glossterm linkend="glossary-database">database</glossterm> or
...@@ -1264,7 +1321,10 @@ ...@@ -1264,7 +1321,10 @@
A computer on which <productname>PostgreSQL</productname> A computer on which <productname>PostgreSQL</productname>
<glossterm linkend="glossary-instance">instances</glossterm> run. <glossterm linkend="glossary-instance">instances</glossterm> run.
The term <firstterm>server</firstterm> denotes real hardware, a The term <firstterm>server</firstterm> denotes real hardware, a
container, or a Virtual Machine. container, or a <firstterm>virtual machine</firstterm>.
</para>
<para>
This term is sometimes used to refer to an instance or to a host.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
...@@ -1279,45 +1339,21 @@ ...@@ -1279,45 +1339,21 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<!-- XXX we should have a much more concise definition
<glossentry id="glossary-sequence"> <glossentry id="glossary-sequence">
<glossterm>Sequence</glossterm> <glossterm>Sequence</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-database">Database</glossterm> object which A type of relation that is used to generate values.
represents the mathematical concept of a numerical integral sequence. Typically the generated values are sequential non-repeating numbers.
It can be thought of as a <glossterm linkend="glossary-table">Table</glossterm> They are commonly used to generate surrogate
with exactly one <glossterm linkend="glossary-tuple">Row</glossterm> and <glossterm linkend="glossary-primary-key">primary key</glossterm>
one <glossterm linkend="glossary-column">Column</glossterm>. The values.
value stored is known as the current value. A
<glossterm linkend="glossary-sequence">Sequence</glossterm> has a defined
direction (usually increasing) and an interval step (usually 1).
Whenever the <literal>NEXTVAL</literal> pseudo-column of a
<glossterm linkend="glossary-sequence">Sequence</glossterm> is accessed,
the current value is moved in the defined direction by the defined
interval step, that value is returned to the invoking query,
and the current value of the sequence is updated to reflect the new value.
The value can be updated multiple times in a single query,
the net effect being that each row selected will have a different value.
Values taken from a
<glossterm linkend="glossary-sequence">Sequence</glossterm> are never
reverted, even in the case of a
<glossterm linkend="glossary-rollback">Rollback</glossterm>, which means
that the <glossterm linkend="glossary-sequence">Sequence</glossterm>
will never generate the same number twice, which makes it useful for
generating
<glossterm linkend="glossary-primary-key">Primary Key</glossterm> values.
</para>
<para>
For more information, see
<xref linkend="sql-createsequence"/>.
</para> </para>
</glossdef> </glossdef>
</glossentry> </glossentry>
-->
<glossentry id="glossary-shared-memory"> <glossentry id="glossary-shared-memory">
<glossterm>Shared Memory</glossterm> <glossterm>Shared memory</glossterm>
<glossdef> <glossdef>
<para> <para>
<acronym>RAM</acronym> which is used by the processes common to an <acronym>RAM</acronym> which is used by the processes common to an
...@@ -1342,27 +1378,31 @@ ...@@ -1342,27 +1378,31 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry>
<glossterm>Standby (server)</glossterm>
<glosssee otherterm="glossary-replica" />
</glossentry>
<glossentry id="glossary-sql-object"> <glossentry id="glossary-sql-object">
<glossterm>SQL Object</glossterm> <glossterm>SQL Object</glossterm>
<glossdef> <glossdef>
<para> <para>
A <glossterm linkend="glossary-table">table</glossterm>, Any object that can be created with a <command>CREATE</command>
<glossterm linkend="glossary-view">view</glossterm>, command. Most objects are specific to one database, and are commonly
<glossterm linkend="glossary-materialized-view">materialized view</glossterm>, known as <firstterm>local objects</firstterm>.
<glossterm linkend="glossary-index">index</glossterm>, <glossterm linkend="glossary-role">Roles</glossterm>,
<glossterm linkend="glossary-constraint">constraint</glossterm>, <glossterm linkend="glossary-tablespace">tablespaces</glossterm>,
<!-- XXX define sequence <glossterm linkend="glossary-sequence"> --> sequence, replication origins, subscriptions for logical replication, and
<glossterm linkend="glossary-function">function</glossterm>, databases themselves are not local SQL objects since they exist
<glossterm linkend="glossary-procedure">procedure</glossterm>, entirely outside of any specific database;
<glossterm linkend="glossary-trigger">trigger</glossterm>, they are called <firstterm>global objects</firstterm>.
data type, or operator. Every one of those SQL objects
belong to exactly one <glossterm linkend="glossary-schema">Schema</glossterm>.
</para> </para>
<para> <para>
There also exist SQL objects that do not belong to schemas; those include Most local objects belong to a specific
<glossterm linkend="glossary-schema">schema</glossterm> in their containing database.
There also exist local objects that do not belong to schemas; some examples are
<glossterm linkend="glossary-extension">extensions</glossterm>, <glossterm linkend="glossary-extension">extensions</glossterm>,
<glossterm linkend="glossary-cast">data type cases</glossterm>, <glossterm linkend="glossary-cast">data type casts</glossterm>, and
and
<glossterm linkend="glossary-foreign-data-wrapper">foreign data wrappers</glossterm>. <glossterm linkend="glossary-foreign-data-wrapper">foreign data wrappers</glossterm>.
</para> </para>
<para> <para>
...@@ -1373,7 +1413,7 @@ ...@@ -1373,7 +1413,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-sql-standard"> <glossentry id="glossary-sql-standard">
<glossterm>SQL Standard</glossterm> <glossterm>SQL standard</glossterm>
<glossdef> <glossdef>
<para> <para>
A series of documents that define the <acronym>SQL</acronym> language. A series of documents that define the <acronym>SQL</acronym> language.
...@@ -1382,11 +1422,11 @@ ...@@ -1382,11 +1422,11 @@
</glossentry> </glossentry>
<glossentry id="glossary-stats-collector"> <glossentry id="glossary-stats-collector">
<glossterm>Stats Collector</glossterm> <glossterm>Stats collector</glossterm>
<glossdef> <glossdef>
<para> <para>
This process collects statistical information about the This process collects statistical information about the
<glossterm linkend="glossary-cluster">Cluster</glossterm>'s activities. <glossterm linkend="glossary-instance">instance</glossterm>'s activities.
</para> </para>
<para> <para>
For more information, see For more information, see
...@@ -1396,22 +1436,21 @@ ...@@ -1396,22 +1436,21 @@
</glossentry> </glossentry>
<glossentry id="glossary-system-catalog"> <glossentry id="glossary-system-catalog">
<glossterm>System Catalog</glossterm> <glossterm>System catalog</glossterm>
<glossdef> <glossdef>
<para> <para>
A collection of <glossterm linkend="glossary-table">tables</glossterm> A collection of <glossterm linkend="glossary-table">tables</glossterm>
which describe the structure of all which describe the structure of all
<glossterm linkend="glossary-sql-object">SQL objects</glossterm> <glossterm linkend="glossary-sql-object">SQL objects</glossterm>
of each <glossterm linkend="glossary-database">database</glossterm> of the instance.
and the <glossterm linkend="glossary-global-sql-object">global SQL objects</glossterm>
of the <glossterm linkend="glossary-cluster">cluster</glossterm>.
The system catalog resides in the schema <literal>pg_catalog</literal>. The system catalog resides in the schema <literal>pg_catalog</literal>.
These tables contain data in internal representation and are These tables contain data in internal representation and are
not typically considered useful for user examination; not typically considered useful for user examination;
a number of user-friendlier <glossterm linkend="glossary-view">views</glossterm> a number of user-friendlier <glossterm linkend="glossary-view">views</glossterm>
also in schema <literal>pg_catalog</literal> offer more convenient access to also in schema <literal>pg_catalog</literal> offer more convenient access to
some of that information, while additional tables and views some of that information, while additional tables and views
exist in schema <literal>information_schema</literal> that expose some exist in schema <literal>information_schema</literal>
(see <xref linkend="information-schema" />) that expose some
of the same and additional information as mandated by the of the same and additional information as mandated by the
<glossterm linkend="glossary-sql-standard">SQL standard</glossterm>. <glossterm linkend="glossary-sql-standard">SQL standard</glossterm>.
</para> </para>
...@@ -1431,7 +1470,7 @@ ...@@ -1431,7 +1470,7 @@
<glossterm linkend="glossary-attribute">attributes</glossterm>, in the same <glossterm linkend="glossary-attribute">attributes</glossterm>, in the same
order, having the same name and type per position). order, having the same name and type per position).
A table is the most common form of A table is the most common form of
<glossterm linkend="glossary-relation">Relation</glossterm> in <glossterm linkend="glossary-relation">relation</glossterm> in
<productname>PostgreSQL</productname>. <productname>PostgreSQL</productname>.
</para> </para>
<para> <para>
...@@ -1461,7 +1500,7 @@ ...@@ -1461,7 +1500,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-temporary-table"> <glossentry id="glossary-temporary-table">
<glossterm>Temporary Table</glossterm> <glossterm>Temporary table</glossterm>
<glossdef> <glossdef>
<para> <para>
<glossterm linkend="glossary-table">Tables</glossterm> that exist either <glossterm linkend="glossary-table">Tables</glossterm> that exist either
...@@ -1481,6 +1520,21 @@ ...@@ -1481,6 +1520,21 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-toast">
<glossterm>TOAST</glossterm>
<glossdef>
<para>
A mechanism by which large attributes of table rows are split and
stored in a secondary table, called the <firstterm>TOAST table</firstterm>.
Each relation with large attributes has its own TOAST table.
</para>
<para>
For more information, see
<xref linkend="storage-toast" />.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-transaction"> <glossentry id="glossary-transaction">
<glossterm>Transaction</glossterm> <glossterm>Transaction</glossterm>
<glossdef> <glossdef>
...@@ -1499,6 +1553,30 @@ ...@@ -1499,6 +1553,30 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-xid">
<glossterm>Transaction ID</glossterm>
<glossdef>
<para>
The numerical, unique, sequentially-assigned identifier that each
transaction receives when it first causes a database modification.
Frequently abbreviated as <firstterm>xid</firstterm>.
When stored on disk, xids are only 32-bits wide, so only
approximately four billion write transaction IDs can be generated;
to permit the system to run for longer than that,
<firstterm>epochs</firstterm> are used, also 32 bits wide.
When the counter reaches the maximum xid value, it starts over at
<literal>3</literal> (values under that are reserved) and the
epoch value is incremented by one.
In some contexts, the epoch and xid values are
considered together as a single 64-bit value.
</para>
<para>
For more information, see
<xref linkend="datatype-oid"/>.
</para>
</glossdef>
</glossentry>
<glossentry id="glossary-trigger"> <glossentry id="glossary-trigger">
<glossterm>Trigger</glossterm> <glossterm>Trigger</glossterm>
<glossdef> <glossdef>
...@@ -1508,7 +1586,7 @@ ...@@ -1508,7 +1586,7 @@
<command>UPDATE</command>, <command>DELETE</command>, <command>UPDATE</command>, <command>DELETE</command>,
<command>TRUNCATE</command>) is applied to a <command>TRUNCATE</command>) is applied to a
<glossterm linkend="glossary-relation">relation</glossterm>. <glossterm linkend="glossary-relation">relation</glossterm>.
A Trigger executes within the same A trigger executes within the same
<glossterm linkend="glossary-transaction">transaction</glossterm> as the <glossterm linkend="glossary-transaction">transaction</glossterm> as the
statement which invoked it, and if the function fails, then the invoking statement which invoked it, and if the function fails, then the invoking
statement also fails. statement also fails.
...@@ -1535,7 +1613,7 @@ ...@@ -1535,7 +1613,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-unique-constraint"> <glossentry id="glossary-unique-constraint">
<glossterm>Unique Constraint</glossterm> <glossterm>Unique constraint</glossterm>
<glossdef> <glossdef>
<para> <para>
A type of <glossterm linkend="glossary-constraint">constraint</glossterm> A type of <glossterm linkend="glossary-constraint">constraint</glossterm>
...@@ -1577,7 +1655,7 @@ ...@@ -1577,7 +1655,7 @@
<glossterm>Update</glossterm> <glossterm>Update</glossterm>
<glossdef> <glossdef>
<para> <para>
A <acronym>SQL</acronym> command used to modify An <acronym>SQL</acronym> command used to modify
<glossterm linkend="glossary-tuple">rows</glossterm> <glossterm linkend="glossary-tuple">rows</glossterm>
that may already exist in a specified <glossterm linkend="glossary-table">table</glossterm>. that may already exist in a specified <glossterm linkend="glossary-table">table</glossterm>.
It cannot create or remove rows. It cannot create or remove rows.
...@@ -1619,9 +1697,10 @@ ...@@ -1619,9 +1697,10 @@
<glossterm>Vacuum</glossterm> <glossterm>Vacuum</glossterm>
<glossdef> <glossdef>
<para> <para>
The process of removing outdated <glossterm linkend="glossary-tuple">tuple The process of removing outdated
versions</glossterm> from tables, and other closely related <glossterm linkend="glossary-tuple">tuple versions</glossterm>
garbage-collection-like processing required by <productname>PostgreSQL</productname>'s from tables or materialized views, and other closely related
processing required by <productname>PostgreSQL</productname>'s
implementation of <glossterm linkend="glossary-mvcc">MVCC</glossterm>. implementation of <glossterm linkend="glossary-mvcc">MVCC</glossterm>.
This can be initiated through the use of This can be initiated through the use of
the <command>VACUUM</command> command, but can also be handled automatically the <command>VACUUM</command> command, but can also be handled automatically
...@@ -1651,8 +1730,28 @@ ...@@ -1651,8 +1730,28 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry id="glossary-vm">
<glossterm>Visibility map (fork)</glossterm>
<glossdef>
<para>
A storage structure that keeps metadata about each data page
of a table's main fork. The visibility map entry for
each page stores two bits: the first one
(<literal>all-visible</literal>) indicates that all tuples
in the page are visible to all transactions. The second one
(<literal>all-frozen</literal>) indicate that all tuples
in the page are marked frozen.
</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>WAL</glossterm>
<glosssee otherterm="glossary-wal" />
</glossentry>
<glossentry id="glossary-wal-archiver"> <glossentry id="glossary-wal-archiver">
<glossterm>WAL Archiver (process)</glossterm> <glossterm>WAL archiver (process)</glossterm>
<glossdef> <glossdef>
<para> <para>
A process that saves copies of <glossterm linkend="glossary-wal-file">WAL files</glossterm> A process that saves copies of <glossterm linkend="glossary-wal-file">WAL files</glossterm>
...@@ -1667,7 +1766,7 @@ ...@@ -1667,7 +1766,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-wal-file"> <glossentry id="glossary-wal-file">
<glossterm>WAL File</glossterm> <glossterm>WAL file</glossterm>
<glossdef> <glossdef>
<para> <para>
Also known as <firstterm>WAL segment</firstterm> or Also known as <firstterm>WAL segment</firstterm> or
...@@ -1678,7 +1777,7 @@ ...@@ -1678,7 +1777,7 @@
and are written in sequential order, interspersing changes and are written in sequential order, interspersing changes
as they occur in multiple simultaneous sessions. as they occur in multiple simultaneous sessions.
If the system crashes, the files are read in order, and each of the If the system crashes, the files are read in order, and each of the
changes are replayed to restore the system to the state as it was changes is replayed to restore the system to the state as it was
before the crash. before the crash.
</para> </para>
<para> <para>
...@@ -1696,13 +1795,8 @@ ...@@ -1696,13 +1795,8 @@
</glossdef> </glossdef>
</glossentry> </glossentry>
<glossentry>
<glossterm>WAL</glossterm>
<glosssee otherterm="glossary-wal" />
</glossentry>
<glossentry id="glossary-wal-record"> <glossentry id="glossary-wal-record">
<glossterm>WAL Record</glossterm> <glossterm>WAL record</glossterm>
<glossdef> <glossdef>
<para> <para>
A low-level description of an individual data change. A low-level description of an individual data change.
...@@ -1719,17 +1813,17 @@ ...@@ -1719,17 +1813,17 @@
</glossentry> </glossentry>
<glossentry> <glossentry>
<glossterm>WAL Segment</glossterm> <glossterm>WAL segment</glossterm>
<glosssee otherterm="glossary-wal-file" /> <glosssee otherterm="glossary-wal-file" />
</glossentry> </glossentry>
<glossentry id="glossary-wal-writer"> <glossentry id="glossary-wal-writer">
<glossterm>WAL Writer (process)</glossterm> <glossterm>WAL writer (process)</glossterm>
<glossdef> <glossdef>
<para> <para>
A process that writes <glossterm linkend="glossary-wal-record">WAL records</glossterm> A process that writes <glossterm linkend="glossary-wal-record">WAL records</glossterm>
from <glossterm id="linkend-shared-memory">shared memory</glossterm> to from <glossterm linkend="glossary-shared-memory">shared memory</glossterm> to
<glossterm id="linkend-wal-file">WAL files</glossterm>. <glossterm linkend="glossary-wal-file">WAL files</glossterm>.
</para> </para>
<para> <para>
For more information, see For more information, see
...@@ -1739,7 +1833,7 @@ ...@@ -1739,7 +1833,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-window-function"> <glossentry id="glossary-window-function">
<glossterm>Window Function</glossterm> <glossterm>Window function</glossterm>
<glossdef> <glossdef>
<para> <para>
A type of <glossterm linkend="glossary-function">function</glossterm> whose A type of <glossterm linkend="glossary-function">function</glossterm> whose
...@@ -1759,7 +1853,7 @@ ...@@ -1759,7 +1853,7 @@
</glossentry> </glossentry>
<glossentry id="glossary-wal"> <glossentry id="glossary-wal">
<glossterm>Write-Ahead Log</glossterm> <glossterm>Write-ahead log</glossterm>
<glossdef> <glossdef>
<para> <para>
The journal that keeps track of the changes in the The journal that keeps track of the changes in the
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment