1 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /><title>Appendix M. Glossary</title><link rel="stylesheet" type="text/css" href="stylesheet.css" /><link rev="made" href="pgsql-docs@lists.postgresql.org" /><meta name="generator" content="DocBook XSL Stylesheets Vsnapshot" /><link rel="prev" href="acronyms.html" title="Appendix L. Acronyms" /><link rel="next" href="color.html" title="Appendix N. Color Support" /></head><body id="docContent" class="container-fluid col-10"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="5" align="center">Appendix M. Glossary</th></tr><tr><td width="10%" align="left"><a accesskey="p" href="acronyms.html" title="Appendix L. Acronyms">Prev</a> </td><td width="10%" align="left"><a accesskey="u" href="appendixes.html" title="Part VIII. Appendixes">Up</a></td><th width="60%" align="center">Part VIII. Appendixes</th><td width="10%" align="right"><a accesskey="h" href="index.html" title="PostgreSQL 18.0 Documentation">Home</a></td><td width="10%" align="right"> <a accesskey="n" href="color.html" title="Appendix N. Color Support">Next</a></td></tr></table><hr /></div><div class="appendix" id="GLOSSARY"><div class="titlepage"><div><div><h2 class="title">Appendix M. Glossary</h2></div></div></div><p>
3 This is a list of terms and their meaning in the context of
4 <span class="productname">PostgreSQL</span> and relational database
6 </p><div class="glosslist"><dl><dt id="GLOSSARY-ACID"><span class="glossterm">ACID</span></dt><dd class="glossdef"><p>
7 <a class="glossterm" href="glossary.html#GLOSSARY-ATOMICITY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATOMICITY" title="Atomicity">Atomicity</a></em></a>,
8 <a class="glossterm" href="glossary.html#GLOSSARY-CONSISTENCY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSISTENCY" title="Consistency">Consistency</a></em></a>,
9 <a class="glossterm" href="glossary.html#GLOSSARY-ISOLATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ISOLATION" title="Isolation">Isolation</a></em></a>, and
10 <a class="glossterm" href="glossary.html#GLOSSARY-DURABILITY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DURABILITY" title="Durability">Durability</a></em></a>.
11 This set of properties of database transactions is intended to
12 guarantee validity in concurrent operation and even in event of
13 errors, power failures, etc.
14 </p></dd><dt id="GLOSSARY-AGGREGATE"><span class="glossterm">Aggregate function (routine)</span></dt><dd class="glossdef"><p>
15 A <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">function</a></em></a> that
16 combines (<em class="firstterm">aggregates</em>) multiple input values,
17 for example by counting, averaging or adding,
18 yielding a single output value.
20 For more information, see
21 <a class="xref" href="functions-aggregate.html" title="9.21. Aggregate Functions">Section 9.21</a>.
22 </p><p>See Also <a class="glossseealso" href="glossary.html#GLOSSARY-WINDOW-FUNCTION">Window function (routine)</a>.</p></dd><dt id="GLOSSARY-AM"><span class="glossterm">Access Method</span></dt><dd class="glossdef"><p>
23 Interfaces which <span class="productname">PostgreSQL</span> use in order to
24 access data in tables and indexes. This abstraction allows for adding
25 support for new types of data storage.
27 For more information, see <a class="xref" href="tableam.html" title="Chapter 62. Table Access Method Interface Definition">Chapter 62</a> and
28 <a class="xref" href="indexam.html" title="Chapter 63. Index Access Method Interface Definition">Chapter 63</a>.
29 </p></dd><dt><span class="glossterm">Analytic function</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-WINDOW-FUNCTION">Window function (routine)</a>.</p></dd><dt id="GLOSSARY-ANALYZE"><span class="glossterm">Analyze (operation)</span></dt><dd class="glossdef"><p>
30 The act of collecting statistics from data in
31 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">tables</a></em></a>
32 and other <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relations</a></em></a>
33 to help the <a class="glossterm" href="glossary.html#GLOSSARY-PLANNER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PLANNER" title="Query planner">query planner</a></em></a>
34 to make decisions about how to execute
35 <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">queries</a></em></a>.
37 (Don't confuse this term with the <code class="literal">ANALYZE</code> option
38 to the <a class="xref" href="sql-explain.html" title="EXPLAIN"><span class="refentrytitle">EXPLAIN</span></a> command.)
40 For more information, see
41 <a class="xref" href="sql-analyze.html" title="ANALYZE"><span class="refentrytitle">ANALYZE</span></a>.
42 </p></dd><dt id="GLOSSARY-AIO"><span class="glossterm">Asynchronous <acronym class="acronym">I/O</acronym></span> (AIO)<a id="id-1.11.14.3.6.3" class="indexterm"></a></dt><dd class="glossdef"><p>
43 Asynchronous <acronym class="acronym">I/O</acronym> (<acronym class="acronym">AIO</acronym>) describes
44 performing <acronym class="acronym">I/O</acronym> in a non-blocking way (asynchronously),
45 in contrast to synchronous <acronym class="acronym">I/O</acronym>, which blocks for the
46 entire duration of the <acronym class="acronym">I/O</acronym>.
48 With <acronym class="acronym">AIO</acronym>, starting an <acronym class="acronym">I/O</acronym> operation
49 is separated from waiting for the result of the operation, allowing
50 multiple <acronym class="acronym">I/O</acronym> operations to be initiated concurrently,
51 as well as performing <acronym class="acronym">CPU</acronym> heavy operations
52 concurrently with <acronym class="acronym">I/O</acronym>. The price for that increased
53 concurrency is increased complexity.
54 </p><p>See Also <a class="glossseealso" href="glossary.html#GLOSSARY-IO">Input/Output</a>.</p></dd><dt id="GLOSSARY-ATOMIC"><span class="glossterm">Atomic</span></dt><dd class="glossdef"><p>
55 In reference to a <a class="glossterm" href="glossary.html#GLOSSARY-DATUM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATUM" title="Datum">datum</a></em></a>:
56 the fact that its value cannot be broken down into smaller
58 </p></dd><dd class="glossdef"><p>
60 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">database transaction</a></em></a>:
61 see <a class="glossterm" href="glossary.html#GLOSSARY-ATOMICITY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATOMICITY" title="Atomicity">atomicity</a></em></a>.
62 </p></dd><dt id="GLOSSARY-ATOMICITY"><span class="glossterm">Atomicity</span></dt><dd class="glossdef"><p>
63 The property of a <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a>
64 that either all its operations complete as a single unit or none do.
65 In addition, if a system failure occurs during the execution of a
66 transaction, no partial results are visible after recovery.
67 This is one of the <acronym class="acronym">ACID</acronym> properties.
68 </p></dd><dt id="GLOSSARY-ATTRIBUTE"><span class="glossterm">Attribute</span></dt><dd class="glossdef"><p>
69 An element with a certain name and data type found within a
70 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">tuple</a></em></a>.
71 </p></dd><dt id="GLOSSARY-AUTOVACUUM"><span class="glossterm">Autovacuum (process)</span></dt><dd class="glossdef"><p>
72 A set of background processes that routinely perform
73 <a class="glossterm" href="glossary.html#GLOSSARY-VACUUM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VACUUM" title="Vacuum">vacuum</a></em></a>
74 and <a class="glossterm" href="glossary.html#GLOSSARY-ANALYZE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ANALYZE" title="Analyze (operation)">analyze</a></em></a> operations.
75 The <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
76 that coordinates the work and is always present (unless autovacuum
77 is disabled) is known as the <em class="firstterm">autovacuum launcher</em>,
78 and the processes that carry out the tasks are known as the
79 <em class="firstterm">autovacuum workers</em>.
81 For more information, see
82 <a class="xref" href="routine-vacuuming.html#AUTOVACUUM" title="24.1.6. The Autovacuum Daemon">Section 24.1.6</a>.
83 </p></dd><dt id="GLOSSARY-AUXILIARY-PROC"><span class="glossterm">Auxiliary process</span></dt><dd class="glossdef"><p>
84 A process within an <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>
85 that is in charge of some specific background task for the instance.
86 The auxiliary processes consist of
88 the <a class="glossterm" href="glossary.html#GLOSSARY-AUTOVACUUM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUTOVACUUM" title="Autovacuum (process)">autovacuum launcher</a></em></a>
89 (but not the autovacuum workers),
90 the <a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WRITER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WRITER" title="Background writer (process)">background writer</a></em></a>,
91 the <a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINTER" title="Checkpointer (process)">checkpointer</a></em></a>,
92 the <a class="glossterm" href="glossary.html#GLOSSARY-LOGGER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-LOGGER" title="Logger (process)">logger</a></em></a>,
93 the <a class="glossterm" href="glossary.html#GLOSSARY-STARTUP-PROCESS"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-STARTUP-PROCESS" title="Startup process">startup process</a></em></a>,
94 the <a class="glossterm" href="glossary.html#GLOSSARY-WAL-ARCHIVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-ARCHIVER" title="WAL archiver (process)">WAL archiver</a></em></a>,
95 the <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECEIVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECEIVER" title="WAL receiver (process)">WAL receiver</a></em></a>
96 (but not the <a class="glossterm" href="glossary.html#GLOSSARY-WAL-SENDER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-SENDER" title="WAL sender (process)">WAL senders</a></em></a>),
97 the <a class="glossterm" href="glossary.html#GLOSSARY-WAL-SUMMARIZER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-SUMMARIZER" title="WAL summarizer (process)">WAL summarizer</a></em></a>,
98 and the <a class="glossterm" href="glossary.html#GLOSSARY-WAL-WRITER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-WRITER" title="WAL writer (process)">WAL writer</a></em></a>.
99 </p></dd><dt id="GLOSSARY-BACKEND"><span class="glossterm">Backend (process)</span></dt><dd class="glossdef"><p>
100 Process of an <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>
101 which acts on behalf of a <a class="glossterm" href="glossary.html#GLOSSARY-SESSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SESSION" title="Session">client session</a></em></a>
102 and handles its requests.
104 (Don't confuse this term with the similar terms
105 <a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WORKER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WORKER" title="Background worker (process)">Background Worker</a></em></a> or
106 <a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WRITER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKGROUND-WRITER" title="Background writer (process)">Background Writer</a></em></a>).
107 </p></dd><dt id="GLOSSARY-BACKGROUND-WORKER"><span class="glossterm">Background worker (process)</span></dt><dd class="glossdef"><p>
108 Process within an <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>,
109 which runs system- or user-supplied code.
110 Serves as infrastructure for several features in
111 <span class="productname">PostgreSQL</span>, such as
112 <a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION" title="Replication">logical replication</a></em></a>
113 and <a class="glossterm" href="glossary.html#GLOSSARY-PARALLEL-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PARALLEL-QUERY" title="Parallel query">parallel queries</a></em></a>.
114 In addition, <a class="glossterm" href="glossary.html#GLOSSARY-EXTENSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-EXTENSION" title="Extension">Extensions</a></em></a> can add
115 custom background worker processes.
117 For more information, see
118 <a class="xref" href="bgworker.html" title="Chapter 46. Background Worker Processes">Chapter 46</a>.
119 </p></dd><dt id="GLOSSARY-BACKGROUND-WRITER"><span class="glossterm">Background writer (process)</span></dt><dd class="glossdef"><p>
120 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
122 <a class="glossterm" href="glossary.html#GLOSSARY-DATA-PAGE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATA-PAGE" title="Data page">data pages</a></em></a> from
123 <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared memory</a></em></a> to
124 the file system. It wakes up periodically, but works only for a short
125 period in order to distribute its expensive <acronym class="acronym">I/O</acronym>
126 activity over time to avoid generating larger
127 <acronym class="acronym">I/O</acronym> peaks which could block other processes.
129 For more information, see
130 <a class="xref" href="runtime-config-resource.html#RUNTIME-CONFIG-RESOURCE-BACKGROUND-WRITER" title="19.4.4. Background Writer">Section 19.4.4</a>.
131 </p></dd><dt id="GLOSSARY-BASEBACKUP"><span class="glossterm">Base Backup</span></dt><dd class="glossdef"><p>
133 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>
134 files. It is generated by the tool <a class="xref" href="app-pgbasebackup.html" title="pg_basebackup"><span class="refentrytitle"><span class="application">pg_basebackup</span></span></a>.
135 In combination with WAL files it can be used as the starting point
136 for recovery, log shipping, or streaming replication.
137 </p></dd><dt id="GLOSSARY-BLOAT"><span class="glossterm">Bloat</span></dt><dd class="glossdef"><p>
138 Space in data pages which does not contain current row versions,
139 such as unused (free) space or outdated row versions.
140 </p></dd><dt id="GLOSSARY-BOOTSTRAP-SUPERUSER"><span class="glossterm">Bootstrap superuser</span></dt><dd class="glossdef"><p>
141 The first <a class="glossterm" href="glossary.html#GLOSSARY-USER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-USER" title="User">user</a></em></a> initialized in a
142 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>.
144 This user owns all system catalog tables in each database. It is also the role
145 from which all granted permissions originate. Because of these things, this
146 role may not be dropped.
148 This role also behaves as a normal
149 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE-SUPERUSER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE-SUPERUSER" title="Database superuser">database superuser</a></em></a>,
150 and its superuser status cannot be removed.
151 </p></dd><dt id="GLOSSARY-BUFFER-ACCESS-STRATEGY"><span class="glossterm">Buffer Access Strategy</span></dt><dd class="glossdef"><p>
152 Some operations will access a large number of
153 <a class="glossterm" href="glossary.html#GLOSSARY-DATA-PAGE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATA-PAGE" title="Data page">pages</a></em></a>. A
154 <em class="firstterm">Buffer Access Strategy</em> helps to prevent these
155 operations from evicting too many pages from
156 <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared buffers</a></em></a>.
158 A Buffer Access Strategy sets up references to a limited number of
159 <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared buffers</a></em></a> and
160 reuses them circularly. When the operation requires a new page, a victim
161 buffer is chosen from the buffers in the strategy ring, which may require
162 flushing the page's dirty data and possibly also unflushed
163 <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a> to permanent storage.
165 Buffer Access Strategies are used for various operations such as
166 sequential scans of large tables, <code class="command">VACUUM</code>,
167 <code class="command">COPY</code>, <code class="command">CREATE TABLE AS SELECT</code>,
168 <code class="command">ALTER TABLE</code>, <code class="command">CREATE DATABASE</code>,
169 <code class="command">CREATE INDEX</code>, and <code class="command">CLUSTER</code>.
170 </p></dd><dt id="GLOSSARY-CAST"><span class="glossterm">Cast</span></dt><dd class="glossdef"><p>
171 A conversion of a <a class="glossterm" href="glossary.html#GLOSSARY-DATUM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATUM" title="Datum">datum</a></em></a>
172 from its current data type to another data type.
174 For more information, see
175 <a class="xref" href="sql-createcast.html" title="CREATE CAST"><span class="refentrytitle">CREATE CAST</span></a>.
176 </p></dd><dt id="GLOSSARY-CATALOG"><span class="glossterm">Catalog</span></dt><dd class="glossdef"><p>
177 The <acronym class="acronym">SQL</acronym> standard uses this term to
178 indicate what is called a
179 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> in
180 <span class="productname">PostgreSQL</span>'s terminology.
182 (Don't confuse this term with
183 <a class="glossterm" href="glossary.html#GLOSSARY-SYSTEM-CATALOG"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SYSTEM-CATALOG" title="System catalog">system catalog</a></em></a>).
185 For more information, see
186 <a class="xref" href="manage-ag-overview.html" title="22.1. Overview">Section 22.1</a>.
187 </p></dd><dt id="GLOSSARY-CHECK-CONSTRAINT"><span class="glossterm">Check constraint</span></dt><dd class="glossdef"><p>
188 A type of <a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT" title="Constraint">constraint</a></em></a>
189 defined on a <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>
190 which restricts the values allowed in one or more
191 <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>. The
192 check constraint can make reference to any attribute of the same row in
193 the relation, but cannot reference other rows of the same relation or
196 For more information, see
197 <a class="xref" href="ddl-constraints.html" title="5.5. Constraints">Section 5.5</a>.
198 </p></dd><dt id="GLOSSARY-CHECKPOINT"><span class="glossterm">Checkpoint</span></dt><dd class="glossdef"><p>
199 A point in the <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a> sequence
200 at which it is guaranteed that the heap and index data files have been
201 updated with all information from
202 <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared memory</a></em></a>
203 modified before that checkpoint;
204 a <em class="firstterm">checkpoint record</em> is written and flushed to WAL
207 A checkpoint is also the act of carrying out all the actions that
208 are necessary to reach a checkpoint as defined above.
209 This process is initiated when predefined conditions are met,
210 such as a specified amount of time has passed, or a certain volume
211 of records has been written; or it can be invoked by the user
212 with the command <code class="command">CHECKPOINT</code>.
214 For more information, see
215 <a class="xref" href="wal-configuration.html" title="28.5. WAL Configuration">Section 28.5</a>.
216 </p></dd><dt id="GLOSSARY-CHECKPOINTER"><span class="glossterm">Checkpointer (process)</span></dt><dd class="glossdef"><p>
217 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
218 that is responsible for executing
219 <a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT" title="Checkpoint">checkpoints</a></em></a>.
220 </p></dd><dt><span class="glossterm">Class (archaic)</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-RELATION">Relation</a>.</p></dd><dt id="GLOSSARY-CLIENT"><span class="glossterm">Client (process)</span></dt><dd class="glossdef"><p>
221 Any process, possibly remote, that establishes a
222 <a class="glossterm" href="glossary.html#GLOSSARY-SESSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SESSION" title="Session">session</a></em></a>
223 by <a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION" title="Connection">connecting</a></em></a> to an
224 <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>
225 to interact with a <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>.
226 </p></dd><dt id="GLOSSARY-CLUSTER-OWNER"><span class="glossterm">Cluster owner</span></dt><dd class="glossdef"><p>
227 The operating system user that owns the
228 <a class="glossterm" href="glossary.html#GLOSSARY-DATA-DIRECTORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATA-DIRECTORY" title="Data directory">data directory</a></em></a>
229 and under which the <code class="literal">postgres</code> process is run.
230 It is required that this user exist prior to creating a new
231 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>.
233 On operating systems with a <code class="literal">root</code> user,
234 said user is not allowed to be the cluster owner.
235 </p></dd><dt id="GLOSSARY-COLUMN"><span class="glossterm">Column</span></dt><dd class="glossdef"><p>
236 An <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attribute</a></em></a> found in
237 a <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> or
238 <a class="glossterm" href="glossary.html#GLOSSARY-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VIEW" title="View">view</a></em></a>.
239 </p></dd><dt id="GLOSSARY-COMMIT"><span class="glossterm">Commit</span></dt><dd class="glossdef"><p>
240 The act of finalizing a
241 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a> within
242 the <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>, which
243 makes it visible to other transactions and assures its
244 <a class="glossterm" href="glossary.html#GLOSSARY-DURABILITY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DURABILITY" title="Durability">durability</a></em></a>.
246 For more information, see
247 <a class="xref" href="sql-commit.html" title="COMMIT"><span class="refentrytitle">COMMIT</span></a>.
248 </p></dd><dt id="GLOSSARY-CONCURRENCY"><span class="glossterm">Concurrency</span></dt><dd class="glossdef"><p>
249 The concept that multiple independent operations happen within the
250 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> at the same time.
251 In <span class="productname">PostgreSQL</span>, concurrency is controlled by
252 the <a class="glossterm" href="glossary.html#GLOSSARY-MVCC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-MVCC" title="Multi-version concurrency control (MVCC)">multiversion concurrency control</a></em></a>
254 </p></dd><dt id="GLOSSARY-CONNECTION"><span class="glossterm">Connection</span></dt><dd class="glossdef"><p>
255 An established line of communication between a client process and a
256 <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend</a></em></a> process,
257 usually over a network, supporting a
258 <a class="glossterm" href="glossary.html#GLOSSARY-SESSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SESSION" title="Session">session</a></em></a>. This term is
259 sometimes used as a synonym for session.
261 For more information, see
262 <a class="xref" href="runtime-config-connection.html" title="19.3. Connections and Authentication">Section 19.3</a>.
263 </p></dd><dt id="GLOSSARY-CONSISTENCY"><span class="glossterm">Consistency</span></dt><dd class="glossdef"><p>
264 The property that the data in the
265 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>
266 is always in compliance with
267 <a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT" title="Constraint">integrity constraints</a></em></a>.
268 Transactions may be allowed to violate some of the constraints
269 transiently before it commits, but if such violations are not resolved
270 by the time it commits, such a transaction is automatically
271 <a class="glossterm" href="glossary.html#GLOSSARY-ROLLBACK"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ROLLBACK" title="Rollback">rolled back</a></em></a>.
272 This is one of the <acronym class="acronym">ACID</acronym> properties.
273 </p></dd><dt id="GLOSSARY-CONSTRAINT"><span class="glossterm">Constraint</span></dt><dd class="glossdef"><p>
274 A restriction on the values of data allowed within a
275 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>,
276 or in attributes of a
277 <a class="glossterm" href="glossary.html#GLOSSARY-DOMAIN"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DOMAIN" title="Domain">domain</a></em></a>.
279 For more information, see
280 <a class="xref" href="ddl-constraints.html" title="5.5. Constraints">Section 5.5</a>.
281 </p></dd><dt id="GLOSSARY-CUMULATIVE-STATISTICS"><span class="glossterm">Cumulative Statistics System</span></dt><dd class="glossdef"><p>
282 A system which, if enabled, accumulates statistical information
283 about the <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>'s
286 For more information, see
287 <a class="xref" href="monitoring-stats.html" title="27.2. The Cumulative Statistics System">Section 27.2</a>.
288 </p></dd><dt><span class="glossterm">Data area</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-DATA-DIRECTORY">Data directory</a>.</p></dd><dt id="GLOSSARY-DATABASE"><span class="glossterm">Database</span></dt><dd class="glossdef"><p>
289 A named collection of
290 <a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT" title="SQL object">local SQL objects</a></em></a>.
292 For more information, see
293 <a class="xref" href="manage-ag-overview.html" title="22.1. Overview">Section 22.1</a>.
294 </p></dd><dt id="GLOSSARY-DB-CLUSTER"><span class="glossterm">Database cluster</span></dt><dd class="glossdef"><p>
295 A collection of databases and global SQL objects,
296 and their common static and dynamic metadata.
297 Sometimes referred to as a
298 <em class="firstterm">cluster</em>.
299 A database cluster is created using the
300 <a class="xref" href="app-initdb.html" title="initdb"><span class="refentrytitle"><span class="application">initdb</span></span></a> program.
302 In <span class="productname">PostgreSQL</span>, the term
303 <em class="firstterm">cluster</em> is also sometimes used to refer to an instance.
304 (Don't confuse this term with the SQL command <code class="command">CLUSTER</code>.)
306 See also <a class="glossterm" href="glossary.html#GLOSSARY-CLUSTER-OWNER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CLUSTER-OWNER" title="Cluster owner">cluster owner</a></em></a>,
307 the operating-system owner of a cluster,
308 and <a class="glossterm" href="glossary.html#GLOSSARY-BOOTSTRAP-SUPERUSER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BOOTSTRAP-SUPERUSER" title="Bootstrap superuser">bootstrap superuser</a></em></a>,
309 the <span class="productname">PostgreSQL</span> owner of a cluster.
310 </p></dd><dt><span class="glossterm">Database server</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-INSTANCE">Instance</a>.</p></dd><dt id="GLOSSARY-DATABASE-SUPERUSER"><span class="glossterm">Database superuser</span></dt><dd class="glossdef"><p>
311 A role having <em class="firstterm">superuser status</em>
312 (see <a class="xref" href="role-attributes.html" title="21.2. Role Attributes">Section 21.2</a>).
314 Frequently referred to as <em class="firstterm">superuser</em>.
315 </p></dd><dt id="GLOSSARY-DATA-DIRECTORY"><span class="glossterm">Data directory</span></dt><dd class="glossdef"><p>
316 The base directory on the file system of a
317 <a class="glossterm" href="glossary.html#GLOSSARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SERVER" title="Server">server</a></em></a> that contains all
318 data files and subdirectories associated with a
319 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>
320 (with the exception of
321 <a class="glossterm" href="glossary.html#GLOSSARY-TABLESPACE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLESPACE" title="Tablespace">tablespaces</a></em></a>,
322 and optionally <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a>).
323 The environment variable <code class="literal">PGDATA</code> is commonly used to
324 refer to the data directory.
326 A <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">cluster</a></em></a>'s storage
327 space comprises the data directory plus any additional tablespaces.
329 For more information, see
330 <a class="xref" href="storage-file-layout.html" title="66.1. Database File Layout">Section 66.1</a>.
331 </p></dd><dt id="GLOSSARY-DATA-PAGE"><span class="glossterm">Data page</span></dt><dd class="glossdef"><p>
332 The basic structure used to store relation data.
333 All pages are of the same size.
334 Data pages are typically stored on disk, each in a specific file,
335 and can be read to <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared buffers</a></em></a>
336 where they can be modified, becoming
337 <em class="firstterm">dirty</em>. They become clean when written
338 to disk. New pages, which initially exist in memory only, are also
340 </p></dd><dt id="GLOSSARY-DATUM"><span class="glossterm">Datum</span></dt><dd class="glossdef"><p>
341 The internal representation of one value of an <acronym class="acronym">SQL</acronym>
343 </p></dd><dt id="GLOSSARY-DELETE"><span class="glossterm">Delete</span></dt><dd class="glossdef"><p>
344 An <acronym class="acronym">SQL</acronym> command which removes
345 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a> from a given
346 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>
347 or <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
349 For more information, see
350 <a class="xref" href="sql-delete.html" title="DELETE"><span class="refentrytitle">DELETE</span></a>.
351 </p></dd><dt id="GLOSSARY-DOMAIN"><span class="glossterm">Domain</span></dt><dd class="glossdef"><p>
352 A user-defined data type that is based on another underlying data type.
353 It acts the same as the underlying type except for possibly restricting
354 the set of allowed values.
356 For more information, see <a class="xref" href="domains.html" title="8.18. Domain Types">Section 8.18</a>.
357 </p></dd><dt id="GLOSSARY-DURABILITY"><span class="glossterm">Durability</span></dt><dd class="glossdef"><p>
358 The assurance that once a
359 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a> has
360 been <a class="glossterm" href="glossary.html#GLOSSARY-COMMIT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-COMMIT" title="Commit">committed</a></em></a>, the
361 changes remain even after a system failure or crash.
362 This is one of the <acronym class="acronym">ACID</acronym> properties.
363 </p></dd><dt><span class="glossterm">Epoch</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-XID">Transaction ID</a>.</p></dd><dt id="GLOSSARY-EXTENSION"><span class="glossterm">Extension</span></dt><dd class="glossdef"><p>
364 A software add-on package that can be installed on an
365 <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a> to
368 For more information, see
369 <a class="xref" href="extend-extensions.html" title="36.17. Packaging Related Objects into an Extension">Section 36.17</a>.
370 </p></dd><dt id="GLOSSARY-FILE-SEGMENT"><span class="glossterm">File segment</span></dt><dd class="glossdef"><p>
371 A physical file which stores data for a given
372 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
373 File segments are limited in size by a configuration value
374 (typically 1 gigabyte),
375 so if a relation exceeds that size, it is split into multiple segments.
377 For more information, see
378 <a class="xref" href="storage-file-layout.html" title="66.1. Database File Layout">Section 66.1</a>.
380 (Don't confuse this term with the similar term
381 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE" title="WAL file">WAL segment</a></em></a>).
382 </p></dd><dt id="GLOSSARY-FOREIGN-DATA-WRAPPER"><span class="glossterm">Foreign data wrapper</span></dt><dd class="glossdef"><p>
383 A means of representing data that is not contained in the local
384 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> so that it appears as if were in local
385 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table(s)</a></em></a>. With a foreign data wrapper it is
386 possible to define a <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-SERVER" title="Foreign server">foreign server</a></em></a> and
387 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE" title="Foreign table (relation)">foreign tables</a></em></a>.
389 For more information, see
390 <a class="xref" href="sql-createforeigndatawrapper.html" title="CREATE FOREIGN DATA WRAPPER"><span class="refentrytitle">CREATE FOREIGN DATA WRAPPER</span></a>.
391 </p></dd><dt id="GLOSSARY-FOREIGN-KEY"><span class="glossterm">Foreign key</span></dt><dd class="glossdef"><p>
392 A type of <a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT" title="Constraint">constraint</a></em></a>
393 defined on one or more <a class="glossterm" href="glossary.html#GLOSSARY-COLUMN"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-COLUMN" title="Column">columns</a></em></a>
394 in a <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> which
395 requires the value(s) in those <a class="glossterm" href="glossary.html#GLOSSARY-COLUMN"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-COLUMN" title="Column">columns</a></em></a> to
396 identify zero or one <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">row</a></em></a>
397 in another (or, infrequently, the same)
398 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>.
399 </p></dd><dt id="GLOSSARY-FOREIGN-SERVER"><span class="glossterm">Foreign server</span></dt><dd class="glossdef"><p>
400 A named collection of
401 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE" title="Foreign table (relation)">foreign tables</a></em></a> which
403 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER" title="Foreign data wrapper">foreign data wrapper</a></em></a>
404 and have other configuration values in common.
406 For more information, see
407 <a class="xref" href="sql-createserver.html" title="CREATE SERVER"><span class="refentrytitle">CREATE SERVER</span></a>.
408 </p></dd><dt id="GLOSSARY-FOREIGN-TABLE"><span class="glossterm">Foreign table (relation)</span></dt><dd class="glossdef"><p>
409 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> which appears to have
410 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a> and
411 <a class="glossterm" href="glossary.html#GLOSSARY-COLUMN"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-COLUMN" title="Column">columns</a></em></a> similar to a
412 regular <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>, but will forward
413 requests for data through its
414 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER" title="Foreign data wrapper">foreign data wrapper</a></em></a>,
415 which will return <a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET" title="Result set">result sets</a></em></a>
416 structured according to the definition of the
417 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE" title="Foreign table (relation)">foreign table</a></em></a>.
419 For more information, see
420 <a class="xref" href="sql-createforeigntable.html" title="CREATE FOREIGN TABLE"><span class="refentrytitle">CREATE FOREIGN TABLE</span></a>.
421 </p></dd><dt id="GLOSSARY-FORK"><span class="glossterm">Fork</span></dt><dd class="glossdef"><p>
422 Each of the separate segmented file sets in which a relation is stored.
423 The <em class="firstterm">main fork</em> is where the actual data resides.
424 There also exist two secondary forks for metadata:
425 the <a class="glossterm" href="glossary.html#GLOSSARY-FSM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FSM" title="Free space map (fork)">free space map</a></em></a>
426 and the <a class="glossterm" href="glossary.html#GLOSSARY-VM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VM" title="Visibility map (fork)">visibility map</a></em></a>.
427 <a class="glossterm" href="glossary.html#GLOSSARY-UNLOGGED"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-UNLOGGED" title="Unlogged">Unlogged relations</a></em></a>
428 also have an <em class="firstterm">init fork</em>.
429 </p></dd><dt id="GLOSSARY-FSM"><span class="glossterm">Free space map (fork)</span></dt><dd class="glossdef"><p>
430 A storage structure that keeps metadata about each data page of a table's
431 main fork. The free space map entry for each page stores the
432 amount of free space that's available for future tuples, and is structured
433 to be efficiently searched for available space for a new tuple of a given
436 For more information, see
437 <a class="xref" href="storage-fsm.html" title="66.3. Free Space Map">Section 66.3</a>.
438 </p></dd><dt id="GLOSSARY-FUNCTION"><span class="glossterm">Function (routine)</span></dt><dd class="glossdef"><p>
439 A type of routine that receives zero or more arguments, returns zero or more
440 output values, and is constrained to run within one transaction.
441 Functions are invoked as part of a query, for example via
442 <code class="command">SELECT</code>.
443 Certain functions can return
444 <a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET" title="Result set">sets</a></em></a>; those are
445 called <em class="firstterm">set-returning functions</em>.
447 Functions can also be used for
448 <a class="glossterm" href="glossary.html#GLOSSARY-TRIGGER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRIGGER" title="Trigger">triggers</a></em></a> to invoke.
450 For more information, see
451 <a class="xref" href="sql-createfunction.html" title="CREATE FUNCTION"><span class="refentrytitle">CREATE FUNCTION</span></a>.
452 </p></dd><dt><span class="glossterm">GMT</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-UTC">UTC</a>.</p></dd><dt id="GLOSSARY-GRANT"><span class="glossterm">Grant</span></dt><dd class="glossdef"><p>
453 An <acronym class="acronym">SQL</acronym> command that is used to allow a
454 <a class="glossterm" href="glossary.html#GLOSSARY-USER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-USER" title="User">user</a></em></a> or
455 <a class="glossterm" href="glossary.html#GLOSSARY-ROLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ROLE" title="Role">role</a></em></a> to access
456 specific objects within the <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>.
458 For more information, see
459 <a class="xref" href="sql-grant.html" title="GRANT"><span class="refentrytitle">GRANT</span></a>.
460 </p></dd><dt id="GLOSSARY-HEAP"><span class="glossterm">Heap</span></dt><dd class="glossdef"><p>
461 Contains the values of <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">row</a></em></a>
462 attributes (i.e., the data) for a
463 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
464 The heap is realized within one or more
465 <a class="glossterm" href="glossary.html#GLOSSARY-FILE-SEGMENT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FILE-SEGMENT" title="File segment">file segments</a></em></a>
466 in the relation's <a class="glossterm" href="glossary.html#GLOSSARY-FORK"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FORK" title="Fork">main fork</a></em></a>.
467 </p></dd><dt id="GLOSSARY-HOST"><span class="glossterm">Host</span></dt><dd class="glossdef"><p>
468 A computer that communicates with other computers over a network.
469 This is sometimes used as a synonym for
470 <a class="glossterm" href="glossary.html#GLOSSARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SERVER" title="Server">server</a></em></a>.
471 It is also used to refer to a computer where
472 <a class="glossterm" href="glossary.html#GLOSSARY-CLIENT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CLIENT" title="Client (process)">client processes</a></em></a> run.
473 </p></dd><dt id="GLOSSARY-INDEX"><span class="glossterm">Index (relation)</span></dt><dd class="glossdef"><p>
474 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> that contains
475 data derived from a <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>
476 or <a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW" title="Materialized view (relation)">materialized view</a></em></a>.
477 Its internal structure supports fast retrieval of and access to the original
480 For more information, see
481 <a class="xref" href="sql-createindex.html" title="CREATE INDEX"><span class="refentrytitle">CREATE INDEX</span></a>.
482 </p></dd><dt id="GLOSSARY-INCREMENTAL-BACKUP"><span class="glossterm">Incremental backup</span></dt><dd class="glossdef"><p>
483 A special <a class="glossterm" href="glossary.html#GLOSSARY-BASEBACKUP"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BASEBACKUP" title="Base Backup">base backup</a></em></a>
484 that for some files may contain only those pages that were modified since
485 a previous backup, as opposed to the full contents of every file. Like
486 base backups, it is generated by the tool <a class="xref" href="app-pgbasebackup.html" title="pg_basebackup"><span class="refentrytitle"><span class="application">pg_basebackup</span></span></a>.
488 To restore incremental backups the tool <a class="xref" href="app-pgcombinebackup.html" title="pg_combinebackup"><span class="refentrytitle"><span class="application">pg_combinebackup</span></span></a>
489 is used, which combines incremental backups with a base backup.
490 Afterwards, recovery can use
491 <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a> to bring the
492 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a> to
495 For more information, see <a class="xref" href="continuous-archiving.html#BACKUP-INCREMENTAL-BACKUP" title="25.3.3. Making an Incremental Backup">Section 25.3.3</a>.
496 </p></dd><dt id="GLOSSARY-IO"><span class="glossterm">Input/Output</span> (I/O)</dt><dd class="glossdef"><p>
497 Input/Output (<acronym class="acronym">I/O</acronym>) describes the communication between
498 a program and peripheral devices. In the context of database systems,
499 <acronym class="acronym">I/O</acronym> commonly, but not exclusively, refers to
500 interaction with storage devices or the network.
501 </p><p>See Also <a class="glossseealso" href="glossary.html#GLOSSARY-AIO">Asynchronous <acronym class="acronym">I/O</acronym></a>.</p></dd><dt id="GLOSSARY-INSERT"><span class="glossterm">Insert</span></dt><dd class="glossdef"><p>
502 An <acronym class="acronym">SQL</acronym> command used to add new data into a
503 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>.
505 For more information, see
506 <a class="xref" href="sql-insert.html" title="INSERT"><span class="refentrytitle">INSERT</span></a>.
507 </p></dd><dt id="GLOSSARY-INSTANCE"><span class="glossterm">Instance</span></dt><dd class="glossdef"><p>
508 A group of <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend</a></em></a> and
509 <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary processes</a></em></a>
510 that communicate using a common shared memory area. One
511 <a class="glossterm" href="glossary.html#GLOSSARY-POSTMASTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-POSTMASTER" title="Postmaster (process)">postmaster process</a></em></a>
512 manages the instance; one instance manages exactly one
513 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>
514 with all its databases. Many instances can run on the same
515 <a class="glossterm" href="glossary.html#GLOSSARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SERVER" title="Server">server</a></em></a>
516 as long as their <acronym class="acronym">TCP</acronym> ports do not conflict.
518 The instance handles all key features of a <acronym class="acronym">DBMS</acronym>:
519 read and write access to files and shared memory,
520 assurance of the <acronym class="acronym">ACID</acronym> properties,
521 <a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION" title="Connection">connections</a></em></a> to
522 <a class="glossterm" href="glossary.html#GLOSSARY-CLIENT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CLIENT" title="Client (process)">client processes</a></em></a>,
523 privilege verification, crash recovery, replication, etc.
524 </p></dd><dt id="GLOSSARY-ISOLATION"><span class="glossterm">Isolation</span></dt><dd class="glossdef"><p>
525 The property that the effects of a transaction are not visible to
526 <a class="glossterm" href="glossary.html#GLOSSARY-CONCURRENCY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONCURRENCY" title="Concurrency">concurrent transactions</a></em></a>
528 This is one of the <acronym class="acronym">ACID</acronym> properties.
530 For more information, see <a class="xref" href="transaction-iso.html" title="13.2. Transaction Isolation">Section 13.2</a>.
531 </p></dd><dt id="GLOSSARY-JOIN"><span class="glossterm">Join</span></dt><dd class="glossdef"><p>
532 An operation and <acronym class="acronym">SQL</acronym> keyword used in
533 <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">queries</a></em></a>
534 for combining data from multiple
535 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relations</a></em></a>.
536 </p></dd><dt id="GLOSSARY-KEY"><span class="glossterm">Key</span></dt><dd class="glossdef"><p>
537 A means of identifying a <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">row</a></em></a> within a
538 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> or
539 other <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> by
540 values contained within one or more
541 <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>
543 </p></dd><dt id="GLOSSARY-LOCK"><span class="glossterm">Lock</span></dt><dd class="glossdef"><p>
544 A mechanism that allows a process to limit or prevent simultaneous
545 access to a resource.
546 </p></dd><dt id="GLOSSARY-LOG-FILE"><span class="glossterm">Log file</span></dt><dd class="glossdef"><p>
547 Log files contain human-readable text lines about events.
548 Examples include login failures, long-running queries, etc.
550 For more information, see
551 <a class="xref" href="logfile-maintenance.html" title="24.3. Log File Maintenance">Section 24.3</a>.
552 </p></dd><dt id="GLOSSARY-LOGGED"><span class="glossterm">Logged</span></dt><dd class="glossdef"><p>
553 A <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> is considered
554 <a class="glossterm" href="glossary.html#GLOSSARY-LOGGED"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-LOGGED" title="Logged">logged</a></em></a> if changes to it are sent to the
555 <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a>. By default, all regular
556 tables are logged. A table can be specified as
557 <a class="glossterm" href="glossary.html#GLOSSARY-UNLOGGED"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-UNLOGGED" title="Unlogged">unlogged</a></em></a> either at
558 creation time or via the <code class="command">ALTER TABLE</code> command.
559 </p></dd><dt id="GLOSSARY-LOGGER"><span class="glossterm">Logger (process)</span></dt><dd class="glossdef"><p>
560 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
561 which, if enabled, writes information about database events into the current
562 <a class="glossterm" href="glossary.html#GLOSSARY-LOG-FILE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-LOG-FILE" title="Log file">log file</a></em></a>.
563 When reaching certain time- or
564 volume-dependent criteria, a new log file is created.
565 Also called <em class="firstterm">syslogger</em>.
567 For more information, see
568 <a class="xref" href="runtime-config-logging.html" title="19.8. Error Reporting and Logging">Section 19.8</a>.
569 </p></dd><dt id="GLOSSARY-LOGICAL-REPLICATION-CLUSTER"><span class="glossterm">Logical replication cluster</span></dt><dd class="glossdef"><p>
570 A set of publisher and subscriber instances with the publisher instance
571 replicating changes to the subscriber instance.
572 </p></dd><dt id="GLOSSARY-LOG-RECORD"><span class="glossterm">Log record</span></dt><dd class="glossdef"><p>
573 Archaic term for a <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD" title="WAL record">WAL record</a></em></a>.
574 </p></dd><dt id="GLOSSARY-LOG-SEQUENCE-NUMBER"><span class="glossterm">Log sequence number</span> (LSN)</dt><dd class="glossdef"><p>
575 Byte offset into the <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a>,
576 increasing monotonically with each new <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD" title="WAL record">WAL record</a></em></a>.
578 For more information, see <a class="link" href="datatype-pg-lsn.html" title="8.20. pg_lsn Type"><code class="type">pg_lsn</code></a> and <a class="xref" href="wal-internals.html" title="28.6. WAL Internals">Section 28.6</a>.
579 </p></dd><dt><span class="glossterm">LSN</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-LOG-SEQUENCE-NUMBER">Log sequence number</a>.</p></dd><dt><span class="glossterm">Master (server)</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-PRIMARY-SERVER">Primary (server)</a>.</p></dd><dt id="GLOSSARY-MATERIALIZED"><span class="glossterm">Materialized</span></dt><dd class="glossdef"><p>
580 The property that some information has been pre-computed and stored
581 for later use, rather than computing it on-the-fly.
584 <a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW" title="Materialized view (relation)">materialized view</a></em></a>,
585 to mean that the data derived from the view's query is stored on
586 disk separately from the sources of that data.
588 This term is also used to refer to some multi-step queries to mean that
589 the data resulting from executing a given step is stored in memory
590 (with the possibility of spilling to disk), so that it can be read multiple
591 times by another step.
592 </p></dd><dt id="GLOSSARY-MATERIALIZED-VIEW"><span class="glossterm">Materialized view (relation)</span></dt><dd class="glossdef"><p>
593 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> that is
594 defined by a <code class="command">SELECT</code> statement
595 (just like a <a class="glossterm" href="glossary.html#GLOSSARY-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VIEW" title="View">view</a></em></a>),
596 but stores data in the same way that a
597 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> does. It cannot be
598 modified via <code class="command">INSERT</code>, <code class="command">UPDATE</code>,
599 <code class="command">DELETE</code>, or <code class="command">MERGE</code> operations.
601 For more information, see
602 <a class="xref" href="sql-creatematerializedview.html" title="CREATE MATERIALIZED VIEW"><span class="refentrytitle">CREATE MATERIALIZED VIEW</span></a>.
603 </p></dd><dt id="GLOSSARY-MERGE"><span class="glossterm">Merge</span></dt><dd class="glossdef"><p>
604 An <acronym class="acronym">SQL</acronym> command used to conditionally add, modify,
605 or remove <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a>
606 in a given <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>,
607 using data from a source
608 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
610 For more information, see
611 <a class="xref" href="sql-merge.html" title="MERGE"><span class="refentrytitle">MERGE</span></a>.
612 </p></dd><dt id="GLOSSARY-MVCC"><span class="glossterm">Multi-version concurrency control (MVCC)</span></dt><dd class="glossdef"><p>
613 A mechanism designed to allow several
614 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transactions</a></em></a> to be
615 reading and writing the same rows without one process causing other
617 In <span class="productname">PostgreSQL</span>, MVCC is implemented by
618 creating copies (<em class="firstterm">versions</em>) of
619 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">tuples</a></em></a> as they are
620 modified; after transactions that can see the old versions terminate,
621 those old versions need to be removed.
622 </p></dd><dt id="GLOSSARY-NULL"><span class="glossterm">Null</span></dt><dd class="glossdef"><p>
623 A concept of non-existence that is a central tenet of relational
624 database theory. It represents the absence of a definite value.
625 </p></dd><dt><span class="glossterm">Optimizer</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-PLANNER">Query planner</a>.</p></dd><dt id="GLOSSARY-PARALLEL-QUERY"><span class="glossterm">Parallel query</span></dt><dd class="glossdef"><p>
626 The ability to handle parts of executing a
627 <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">query</a></em></a> to take advantage
628 of parallel processes on servers with multiple <acronym class="acronym">CPU</acronym>s.
629 </p></dd><dt id="GLOSSARY-PARTITION"><span class="glossterm">Partition</span></dt><dd class="glossdef"><p>
630 One of several disjoint (not overlapping) subsets of a larger set.
631 </p></dd><dd class="glossdef"><p>
633 <a class="glossterm" href="glossary.html#GLOSSARY-PARTITIONED-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PARTITIONED-TABLE" title="Partitioned table (relation)">partitioned table</a></em></a>:
634 One of the tables that each contain part of the data of the partitioned table,
635 which is said to be the <em class="firstterm">parent</em>.
636 The partition is itself a table, so it can also be queried directly;
637 at the same time, a partition can sometimes be a partitioned table,
638 allowing hierarchies to be created.
639 </p></dd><dd class="glossdef"><p>
640 In reference to a <a class="glossterm" href="glossary.html#GLOSSARY-WINDOW-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WINDOW-FUNCTION" title="Window function (routine)">window function</a></em></a>
641 in a <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">query</a></em></a>,
642 a partition is a user-defined criterion that identifies which neighboring
643 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a>
644 of the <a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET" title="Result set">query's result set</a></em></a>
645 can be considered by the function.
646 </p></dd><dt id="GLOSSARY-PARTITIONED-TABLE"><span class="glossterm">Partitioned table (relation)</span></dt><dd class="glossdef"><p>
647 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> that is
648 in semantic terms the same as a <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>,
649 but whose storage is distributed across several
650 <a class="glossterm" href="glossary.html#GLOSSARY-PARTITION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PARTITION" title="Partition">partitions</a></em></a>.
651 </p></dd><dt id="GLOSSARY-POSTMASTER"><span class="glossterm">Postmaster (process)</span></dt><dd class="glossdef"><p>
652 The very first process of an <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>.
653 It starts and manages the
654 <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary processes</a></em></a>
655 and creates <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend processes</a></em></a>
658 For more information, see
659 <a class="xref" href="server-start.html" title="18.3. Starting the Database Server">Section 18.3</a>.
660 </p></dd><dt id="GLOSSARY-PRIMARY-KEY"><span class="glossterm">Primary key</span></dt><dd class="glossdef"><p>
662 <a class="glossterm" href="glossary.html#GLOSSARY-UNIQUE-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-UNIQUE-CONSTRAINT" title="Unique constraint">unique constraint</a></em></a>
664 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> or other
665 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> that also
666 guarantees that all of the
667 <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>
668 within the <a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-KEY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-KEY" title="Primary key">primary key</a></em></a>
669 do not have <a class="glossterm" href="glossary.html#GLOSSARY-NULL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-NULL" title="Null">null</a></em></a> values.
670 As the name implies, there can be only one
671 primary key per table, though it is possible to have multiple unique
672 constraints that also have no null-capable attributes.
673 </p></dd><dt id="GLOSSARY-PRIMARY-SERVER"><span class="glossterm">Primary (server)</span></dt><dd class="glossdef"><p>
674 When two or more <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">databases</a></em></a>
675 are linked via <a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION" title="Replication">replication</a></em></a>,
676 the <a class="glossterm" href="glossary.html#GLOSSARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SERVER" title="Server">server</a></em></a>
677 that is considered the authoritative source of information is called
678 the <em class="firstterm">primary</em>,
679 also known as a <em class="firstterm">master</em>.
680 </p></dd><dt id="GLOSSARY-PROCEDURE"><span class="glossterm">Procedure (routine)</span></dt><dd class="glossdef"><p>
682 Their distinctive qualities are that they do not return values,
683 and that they are allowed to make transactional statements such
684 as <code class="command">COMMIT</code> and <code class="command">ROLLBACK</code>.
685 They are invoked via the <code class="command">CALL</code> command.
687 For more information, see
688 <a class="xref" href="sql-createprocedure.html" title="CREATE PROCEDURE"><span class="refentrytitle">CREATE PROCEDURE</span></a>.
689 </p></dd><dt id="GLOSSARY-QUERY"><span class="glossterm">Query</span></dt><dd class="glossdef"><p>
690 A request sent by a client to a <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend</a></em></a>,
691 usually to return results or to modify data on the database.
692 </p></dd><dt id="GLOSSARY-PLANNER"><span class="glossterm">Query planner</span></dt><dd class="glossdef"><p>
693 The part of <span class="productname">PostgreSQL</span> that is devoted to
694 determining (<em class="firstterm">planning</em>) the most efficient way to
695 execute <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">queries</a></em></a>.
696 Also known as <em class="firstterm">query optimizer</em>,
697 <em class="firstterm">optimizer</em>, or simply <em class="firstterm">planner</em>.
698 </p></dd><dt><span class="glossterm">Record</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-TUPLE">Tuple</a>.</p></dd><dt><span class="glossterm">Recycling</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-WAL-FILE">WAL file</a>.</p></dd><dt id="GLOSSARY-REFERENTIAL-INTEGRITY"><span class="glossterm">Referential integrity</span></dt><dd class="glossdef"><p>
699 A means of restricting data in one <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>
700 by a <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-KEY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-KEY" title="Foreign key">foreign key</a></em></a>
701 so that it must have matching data in another
702 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
703 </p></dd><dt id="GLOSSARY-RELATION"><span class="glossterm">Relation</span></dt><dd class="glossdef"><p>
704 The generic term for all objects in a
705 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>
706 that have a name and a list of
707 <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>
708 defined in a specific order.
709 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">Tables</a></em></a>,
710 <a class="glossterm" href="glossary.html#GLOSSARY-SEQUENCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SEQUENCE" title="Sequence (relation)">sequences</a></em></a>,
711 <a class="glossterm" href="glossary.html#GLOSSARY-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VIEW" title="View">views</a></em></a>,
712 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-TABLE" title="Foreign table (relation)">foreign tables</a></em></a>,
713 <a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-MATERIALIZED-VIEW" title="Materialized view (relation)">materialized views</a></em></a>,
715 <a class="glossterm" href="glossary.html#GLOSSARY-INDEX"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INDEX" title="Index (relation)">indexes</a></em></a> are all relations.
717 More generically, a relation is a set of tuples; for example,
718 the result of a query is also a relation.
720 In <span class="productname">PostgreSQL</span>,
721 <em class="firstterm">Class</em> is an archaic synonym for
722 <em class="firstterm">relation</em>.
723 </p></dd><dt id="GLOSSARY-REPLICA"><span class="glossterm">Replica (server)</span></dt><dd class="glossdef"><p>
724 A <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> that is paired
725 with a <a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER" title="Primary (server)">primary</a></em></a>
726 database and is maintaining a copy of some or all of the primary database's
727 data. The foremost reasons for doing this are to allow for greater access
728 to that data, and to maintain availability of the data in the event that
729 the <a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER" title="Primary (server)">primary</a></em></a>
731 </p></dd><dt id="GLOSSARY-REPLICATION"><span class="glossterm">Replication</span></dt><dd class="glossdef"><p>
732 The act of reproducing data on one
733 <a class="glossterm" href="glossary.html#GLOSSARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SERVER" title="Server">server</a></em></a> onto another
734 server called a <a class="glossterm" href="glossary.html#GLOSSARY-REPLICA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICA" title="Replica (server)">replica</a></em></a>.
735 This can take the form of <em class="firstterm">physical replication</em>,
736 where all file changes from one server are copied verbatim,
737 or <em class="firstterm">logical replication</em> where a defined subset
738 of data changes are conveyed using a higher-level representation.
739 </p></dd><dt id="GLOSSARY-RESTARTPOINT"><span class="glossterm">Restartpoint</span></dt><dd class="glossdef"><p>
740 A variant of a <a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT" title="Checkpoint">checkpoint</a></em></a> performed on a
741 <a class="glossterm" href="glossary.html#GLOSSARY-REPLICA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICA" title="Replica (server)">replica</a></em></a>.
743 For more information, see <a class="xref" href="wal-configuration.html" title="28.5. WAL Configuration">Section 28.5</a>.
744 </p></dd><dt id="GLOSSARY-RESULT-SET"><span class="glossterm">Result set</span></dt><dd class="glossdef"><p>
745 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> transmitted
746 from a <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend process</a></em></a>
747 to a <a class="glossterm" href="glossary.html#GLOSSARY-CLIENT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CLIENT" title="Client (process)">client</a></em></a> upon the
748 completion of an <acronym class="acronym">SQL</acronym> command, usually a
749 <code class="command">SELECT</code> but it can be an
750 <code class="command">INSERT</code>, <code class="command">UPDATE</code>,
751 <code class="command">DELETE</code>, or <code class="command">MERGE</code> command if the
752 <code class="literal">RETURNING</code> clause is specified.
754 The fact that a result set is a relation means that a query can be used
755 in the definition of another query, becoming a
756 <em class="firstterm">subquery</em>.
757 </p></dd><dd class="glossdef"><p>
758 </p></dd><dt id="GLOSSARY-REVOKE"><span class="glossterm">Revoke</span></dt><dd class="glossdef"><p>
759 A command to prevent access to a named set of
760 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> objects for a
761 named list of <a class="glossterm" href="glossary.html#GLOSSARY-ROLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ROLE" title="Role">roles</a></em></a>.
763 For more information, see
764 <a class="xref" href="sql-revoke.html" title="REVOKE"><span class="refentrytitle">REVOKE</span></a>.
765 </p></dd><dt id="GLOSSARY-ROLE"><span class="glossterm">Role</span></dt><dd class="glossdef"><p>
766 A collection of access privileges to the
767 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">instance</a></em></a>.
768 Roles are themselves a privilege that can be granted to other roles.
769 This is often done for convenience or to ensure completeness
770 when multiple <a class="glossterm" href="glossary.html#GLOSSARY-USER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-USER" title="User">users</a></em></a> need
773 For more information, see
774 <a class="xref" href="sql-createrole.html" title="CREATE ROLE"><span class="refentrytitle">CREATE ROLE</span></a>.
775 </p></dd><dt id="GLOSSARY-ROLLBACK"><span class="glossterm">Rollback</span></dt><dd class="glossdef"><p>
776 A command to undo all of the operations performed since the beginning
777 of a <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a>.
779 For more information, see
780 <a class="xref" href="sql-rollback.html" title="ROLLBACK"><span class="refentrytitle">ROLLBACK</span></a>.
781 </p></dd><dt id="GLOSSARY-ROUTINE"><span class="glossterm">Routine</span></dt><dd class="glossdef"><p>
782 A defined set of instructions stored in the database system
783 that can be invoked for execution.
784 A routine can be written in a variety of programming
785 languages. Routines can be
786 <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">functions</a></em></a>
787 (including set-returning functions and
788 <a class="glossterm" href="glossary.html#GLOSSARY-TRIGGER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRIGGER" title="Trigger">trigger functions</a></em></a>),
789 <a class="glossterm" href="glossary.html#GLOSSARY-AGGREGATE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AGGREGATE" title="Aggregate function (routine)">aggregate functions</a></em></a>,
790 and <a class="glossterm" href="glossary.html#GLOSSARY-PROCEDURE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PROCEDURE" title="Procedure (routine)">procedures</a></em></a>.
792 Many routines are already defined within <span class="productname">PostgreSQL</span>
793 itself, but user-defined ones can also be added.
794 </p></dd><dt><span class="glossterm">Row</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-TUPLE">Tuple</a>.</p></dd><dt id="GLOSSARY-SAVEPOINT"><span class="glossterm">Savepoint</span></dt><dd class="glossdef"><p>
795 A special mark in the sequence of steps in a
796 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a>.
797 Data modifications after this point in time may be reverted
798 to the time of the savepoint.
800 For more information, see
801 <a class="xref" href="sql-savepoint.html" title="SAVEPOINT"><span class="refentrytitle">SAVEPOINT</span></a>.
802 </p></dd><dt id="GLOSSARY-SCHEMA"><span class="glossterm">Schema</span></dt><dd class="glossdef"><p>
803 A schema is a namespace for
804 <a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT" title="SQL object">SQL objects</a></em></a>,
805 which all reside in the same
806 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>.
807 Each SQL object must reside in exactly one schema.
809 All system-defined SQL objects reside in schema <code class="literal">pg_catalog</code>.
810 </p></dd><dd class="glossdef"><p>
811 More generically, the term <em class="firstterm">schema</em> is used to mean
812 all data descriptions (<a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a> definitions,
813 <a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT" title="Constraint">constraints</a></em></a>, comments, etc.)
814 for a given <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> or
817 For more information, see
818 <a class="xref" href="ddl-schemas.html" title="5.10. Schemas">Section 5.10</a>.
819 </p></dd><dt><span class="glossterm">Segment</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-FILE-SEGMENT">File segment</a>.</p></dd><dt id="GLOSSARY-SELECT"><span class="glossterm">Select</span></dt><dd class="glossdef"><p>
820 The <acronym class="acronym">SQL</acronym> command used to request data from a
821 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>.
822 Normally, <code class="command">SELECT</code> commands are not expected to modify the
823 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> in any way,
824 but it is possible that
825 <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">functions</a></em></a> invoked within
826 the query could have side effects that do modify data.
828 For more information, see
829 <a class="xref" href="sql-select.html" title="SELECT"><span class="refentrytitle">SELECT</span></a>.
830 </p></dd><dt id="GLOSSARY-SEQUENCE"><span class="glossterm">Sequence (relation)</span></dt><dd class="glossdef"><p>
831 A type of relation that is used to generate values.
832 Typically the generated values are sequential non-repeating numbers.
833 They are commonly used to generate surrogate
834 <a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-KEY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-KEY" title="Primary key">primary key</a></em></a>
836 </p></dd><dt id="GLOSSARY-SERVER"><span class="glossterm">Server</span></dt><dd class="glossdef"><p>
837 A computer on which <span class="productname">PostgreSQL</span>
838 <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instances</a></em></a> run.
839 The term <em class="firstterm">server</em> denotes real hardware, a
840 container, or a <em class="firstterm">virtual machine</em>.
842 This term is sometimes used to refer to an instance or to a host.
843 </p></dd><dt id="GLOSSARY-SESSION"><span class="glossterm">Session</span></dt><dd class="glossdef"><p>
844 A state that allows a client and a backend to interact,
845 communicating over a <a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONNECTION" title="Connection">connection</a></em></a>.
846 </p></dd><dt id="GLOSSARY-SHARED-MEMORY"><span class="glossterm">Shared memory</span></dt><dd class="glossdef"><p>
847 <acronym class="acronym">RAM</acronym> which is used by the processes common to an
848 <a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INSTANCE" title="Instance">instance</a></em></a>.
849 It mirrors parts of <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a>
850 files, provides a transient area for
851 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD" title="WAL record">WAL records</a></em></a>,
852 and stores additional common information.
853 Note that shared memory belongs to the complete instance, not to a single
856 The largest part of shared memory is known as <em class="firstterm">shared buffers</em>
857 and is used to mirror part of data files, organized into pages.
858 When a page is modified, it is called a dirty page until it is
859 written back to the file system.
861 For more information, see
862 <a class="xref" href="runtime-config-resource.html#RUNTIME-CONFIG-RESOURCE-MEMORY" title="19.4.1. Memory">Section 19.4.1</a>.
863 </p></dd><dt id="GLOSSARY-SQL-OBJECT"><span class="glossterm">SQL object</span></dt><dd class="glossdef"><p>
864 Any object that can be created with a <code class="command">CREATE</code>
865 command. Most objects are specific to one database, and are commonly
866 known as <em class="firstterm">local objects</em>.
868 Most local objects reside in a specific
869 <a class="glossterm" href="glossary.html#GLOSSARY-SCHEMA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SCHEMA" title="Schema">schema</a></em></a> in their
870 containing database, such as
871 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relations</a></em></a> (all types),
872 <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">routines</a></em></a> (all types),
874 The names of such objects of the same type in the same schema
875 are enforced to be unique.
877 There also exist local objects that do not reside in schemas; some examples are
878 <a class="glossterm" href="glossary.html#GLOSSARY-EXTENSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-EXTENSION" title="Extension">extensions</a></em></a>,
879 <a class="glossterm" href="glossary.html#GLOSSARY-CAST"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CAST" title="Cast">data type casts</a></em></a>, and
880 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER" title="Foreign data wrapper">foreign data wrappers</a></em></a>.
881 The names of such objects of the same type are enforced to be unique
884 Other object types, such as
885 <a class="glossterm" href="glossary.html#GLOSSARY-ROLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ROLE" title="Role">roles</a></em></a>,
886 <a class="glossterm" href="glossary.html#GLOSSARY-TABLESPACE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLESPACE" title="Tablespace">tablespaces</a></em></a>,
887 replication origins, subscriptions for logical replication, and
888 databases themselves are not local SQL objects since they exist
889 entirely outside of any specific database;
890 they are called <em class="firstterm">global objects</em>.
891 The names of such objects are enforced to be unique within the whole
894 For more information, see
895 <a class="xref" href="manage-ag-overview.html" title="22.1. Overview">Section 22.1</a>.
896 </p></dd><dt id="GLOSSARY-SQL-STANDARD"><span class="glossterm">SQL standard</span></dt><dd class="glossdef"><p>
897 A series of documents that define the <acronym class="acronym">SQL</acronym> language.
898 </p></dd><dt><span class="glossterm">Standby (server)</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-REPLICA">Replica (server)</a>.</p></dd><dt id="GLOSSARY-STARTUP-PROCESS"><span class="glossterm">Startup process</span></dt><dd class="glossdef"><p>
899 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
900 that replays WAL during crash recovery and in a
901 <a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICATION" title="Replication">physical replica</a></em></a>.
903 (The name is historical: the startup process was named before
904 replication was implemented; the name refers to its task as it
905 relates to the server startup following a crash.)
906 </p></dd><dt id="GLOSSARY-SUPERUSER"><span class="glossterm">Superuser</span></dt><dd class="glossdef"><p>
907 As used in this documentation, it is a synonym for
908 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE-SUPERUSER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE-SUPERUSER" title="Database superuser">database superuser</a></em></a>.
909 </p></dd><dt id="GLOSSARY-SYSTEM-CATALOG"><span class="glossterm">System catalog</span></dt><dd class="glossdef"><p>
910 A collection of <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">tables</a></em></a>
911 which describe the structure of all
912 <a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT" title="SQL object">SQL objects</a></em></a>
914 The system catalog resides in the schema <code class="literal">pg_catalog</code>.
915 These tables contain data in internal representation and are
916 not typically considered useful for user examination;
917 a number of user-friendlier <a class="glossterm" href="glossary.html#GLOSSARY-VIEW"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-VIEW" title="View">views</a></em></a>,
918 also in schema <code class="literal">pg_catalog</code>, offer more convenient access to
919 some of that information, while additional tables and views
920 exist in schema <code class="literal">information_schema</code>
921 (see <a class="xref" href="information-schema.html" title="Chapter 35. The Information Schema">Chapter 35</a>) that expose some
922 of the same and additional information as mandated by the
923 <a class="glossterm" href="glossary.html#GLOSSARY-SQL-STANDARD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SQL-STANDARD" title="SQL standard">SQL standard</a></em></a>.
925 For more information, see
926 <a class="xref" href="ddl-schemas.html" title="5.10. Schemas">Section 5.10</a>.
927 </p></dd><dt id="GLOSSARY-TABLE"><span class="glossterm">Table</span></dt><dd class="glossdef"><p>
928 A collection of <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">tuples</a></em></a> having
929 a common data structure (the same number of
930 <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>, in the same
931 order, having the same name and type per position).
932 A table is the most common form of
933 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> in
934 <span class="productname">PostgreSQL</span>.
936 For more information, see
937 <a class="xref" href="sql-createtable.html" title="CREATE TABLE"><span class="refentrytitle">CREATE TABLE</span></a>.
938 </p></dd><dt id="GLOSSARY-TABLESPACE"><span class="glossterm">Tablespace</span></dt><dd class="glossdef"><p>
939 A named location on the server file system.
940 All <a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SQL-OBJECT" title="SQL object">SQL objects</a></em></a>
941 which require storage beyond their definition in the
942 <a class="glossterm" href="glossary.html#GLOSSARY-SYSTEM-CATALOG"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SYSTEM-CATALOG" title="System catalog">system catalog</a></em></a>
943 must belong to a single tablespace.
944 Initially, a database cluster contains a single usable tablespace which is
945 used as the default for all SQL objects, called <code class="literal">pg_default</code>.
947 For more information, see
948 <a class="xref" href="manage-ag-tablespaces.html" title="22.6. Tablespaces">Section 22.6</a>.
949 </p></dd><dt id="GLOSSARY-TEMPORARY-TABLE"><span class="glossterm">Temporary table</span></dt><dd class="glossdef"><p>
950 <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">Tables</a></em></a> that exist either
951 for the lifetime of a
952 <a class="glossterm" href="glossary.html#GLOSSARY-SESSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SESSION" title="Session">session</a></em></a> or a
953 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a>, as
954 specified at the time of creation.
955 The data in them is not visible to other sessions, and is not
956 <a class="glossterm" href="glossary.html#GLOSSARY-LOGGED"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-LOGGED" title="Logged">logged</a></em></a>.
957 Temporary tables are often used to store intermediate data for a
958 multi-step operation.
960 For more information, see
961 <a class="xref" href="sql-createtable.html" title="CREATE TABLE"><span class="refentrytitle">CREATE TABLE</span></a>.
962 </p></dd><dt id="GLOSSARY-TOAST"><span class="glossterm">TOAST</span></dt><dd class="glossdef"><p>
963 A mechanism by which large attributes of table rows are split and
964 stored in a secondary table, called the <em class="firstterm">TOAST table</em>.
965 Each relation with large attributes has its own TOAST table.
967 For more information, see
968 <a class="xref" href="storage-toast.html" title="66.2. TOAST">Section 66.2</a>.
969 </p></dd><dt id="GLOSSARY-TRANSACTION"><span class="glossterm">Transaction</span></dt><dd class="glossdef"><p>
970 A combination of commands that must act as a single
971 <a class="glossterm" href="glossary.html#GLOSSARY-ATOMIC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATOMIC" title="Atomic">atomic</a></em></a> command: they all
972 succeed or all fail as a single unit, and their effects are not visible to
973 other <a class="glossterm" href="glossary.html#GLOSSARY-SESSION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SESSION" title="Session">sessions</a></em></a> until
974 the transaction is complete, and possibly even later, depending on the
977 For more information, see
978 <a class="xref" href="transaction-iso.html" title="13.2. Transaction Isolation">Section 13.2</a>.
979 </p></dd><dt id="GLOSSARY-XID"><span class="glossterm">Transaction ID</span></dt><dd class="glossdef"><p>
980 The numerical, unique, sequentially-assigned identifier that each
981 transaction receives when it first causes a database modification.
982 Frequently abbreviated as <em class="firstterm">xid</em>.
983 When stored on disk, xids are only 32-bits wide, so only
984 approximately four billion write transaction IDs can be generated;
985 to permit the system to run for longer than that,
986 <em class="firstterm">epochs</em> are used, also 32 bits wide.
987 When the counter reaches the maximum xid value, it starts over at
988 <code class="literal">3</code> (values under that are reserved) and the
989 epoch value is incremented by one.
990 In some contexts, the epoch and xid values are
991 considered together as a single 64-bit value; see <a class="xref" href="transaction-id.html" title="67.1. Transactions and Identifiers">Section 67.1</a> for more details.
993 For more information, see
994 <a class="xref" href="datatype-oid.html" title="8.19. Object Identifier Types">Section 8.19</a>.
995 </p></dd><dt id="GLOSSARY-TPS"><span class="glossterm">Transactions per second (TPS)</span></dt><dd class="glossdef"><p>
996 Average number of transactions that are executed per second,
997 totaled across all sessions active for a measured run.
998 This is used as a measure of the performance characteristics of
1000 </p></dd><dt id="GLOSSARY-TRIGGER"><span class="glossterm">Trigger</span></dt><dd class="glossdef"><p>
1001 A <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">function</a></em></a> which can
1002 be defined to execute whenever a certain operation (<code class="command">INSERT</code>,
1003 <code class="command">UPDATE</code>, <code class="command">DELETE</code>,
1004 <code class="command">TRUNCATE</code>) is applied to a
1005 <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>.
1006 A trigger executes within the same
1007 <a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TRANSACTION" title="Transaction">transaction</a></em></a> as the
1008 statement which invoked it, and if the function fails, then the invoking
1009 statement also fails.
1011 For more information, see
1012 <a class="xref" href="sql-createtrigger.html" title="CREATE TRIGGER"><span class="refentrytitle">CREATE TRIGGER</span></a>.
1013 </p></dd><dt id="GLOSSARY-TUPLE"><span class="glossterm">Tuple</span></dt><dd class="glossdef"><p>
1014 A collection of <a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ATTRIBUTE" title="Attribute">attributes</a></em></a>
1016 That order may be defined by the <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>
1017 (or other <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>)
1018 where the tuple is contained, in which case the tuple is often called a
1019 <em class="firstterm">row</em>. It may also be defined by the structure of a
1020 result set, in which case it is sometimes called a <em class="firstterm">record</em>.
1021 </p></dd><dt id="GLOSSARY-UNIQUE-CONSTRAINT"><span class="glossterm">Unique constraint</span></dt><dd class="glossdef"><p>
1022 A type of <a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CONSTRAINT" title="Constraint">constraint</a></em></a>
1023 defined on a <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a>
1024 which restricts the values allowed in one or a combination of columns
1025 so that each value or combination of values can only appear once in the
1026 relation — that is, no other row in the relation contains values
1027 that are equal to those.
1029 Because <a class="glossterm" href="glossary.html#GLOSSARY-NULL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-NULL" title="Null">null values</a></em></a> are
1030 not considered equal to each other, multiple rows with null values are
1031 allowed to exist without violating the unique constraint.
1032 </p></dd><dt id="GLOSSARY-UNLOGGED"><span class="glossterm">Unlogged</span></dt><dd class="glossdef"><p>
1033 The property of certain <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relations</a></em></a>
1034 that the changes to them are not reflected in the
1035 <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a>.
1036 This disables replication and crash recovery for these relations.
1038 The primary use of unlogged tables is for storing
1039 transient work data that must be shared across processes.
1041 <a class="glossterm" href="glossary.html#GLOSSARY-TEMPORARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TEMPORARY-TABLE" title="Temporary table">Temporary tables</a></em></a>
1042 are always unlogged.
1043 </p></dd><dt id="GLOSSARY-UPDATE"><span class="glossterm">Update</span></dt><dd class="glossdef"><p>
1044 An <acronym class="acronym">SQL</acronym> command used to modify
1045 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a>
1046 that may already exist in a specified <a class="glossterm" href="glossary.html#GLOSSARY-TABLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TABLE" title="Table">table</a></em></a>.
1047 It cannot create or remove rows.
1049 For more information, see
1050 <a class="xref" href="sql-update.html" title="UPDATE"><span class="refentrytitle">UPDATE</span></a>.
1051 </p></dd><dt id="GLOSSARY-USER"><span class="glossterm">User</span></dt><dd class="glossdef"><p>
1052 A <a class="glossterm" href="glossary.html#GLOSSARY-ROLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-ROLE" title="Role">role</a></em></a> that has the
1053 <em class="firstterm">login privilege</em>
1054 (see <a class="xref" href="role-attributes.html" title="21.2. Role Attributes">Section 21.2</a>).
1055 </p></dd><dt id="GLOSSARY-USER-MAPPING"><span class="glossterm">User mapping</span></dt><dd class="glossdef"><p>
1056 The translation of login credentials in the local
1057 <a class="glossterm" href="glossary.html#GLOSSARY-DATABASE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DATABASE" title="Database">database</a></em></a> to credentials
1058 in a remote data system defined by a
1059 <a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FOREIGN-DATA-WRAPPER" title="Foreign data wrapper">foreign data wrapper</a></em></a>.
1061 For more information, see
1062 <a class="xref" href="sql-createusermapping.html" title="CREATE USER MAPPING"><span class="refentrytitle">CREATE USER MAPPING</span></a>.
1063 </p></dd><dt id="GLOSSARY-UTC"><span class="glossterm">UTC</span></dt><dd class="glossdef"><p>
1064 Universal Coordinated Time, the primary global time reference,
1065 approximately the time prevailing at the zero meridian of longitude.
1066 Often but inaccurately referred to as GMT (Greenwich Mean Time).
1067 </p></dd><dt id="GLOSSARY-VACUUM"><span class="glossterm">Vacuum</span></dt><dd class="glossdef"><p>
1068 The process of removing outdated
1069 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">tuple versions</a></em></a>
1070 from tables or materialized views, and other closely related
1071 processing required by <span class="productname">PostgreSQL</span>'s
1072 implementation of <a class="glossterm" href="glossary.html#GLOSSARY-MVCC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-MVCC" title="Multi-version concurrency control (MVCC)">MVCC</a></em></a>.
1073 This can be initiated through the use of
1074 the <code class="command">VACUUM</code> command, but can also be handled automatically
1075 via <a class="glossterm" href="glossary.html#GLOSSARY-AUTOVACUUM"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUTOVACUUM" title="Autovacuum (process)">autovacuum</a></em></a> processes.
1077 For more information, see
1078 <a class="xref" href="routine-vacuuming.html" title="24.1. Routine Vacuuming">Section 24.1</a> .
1079 </p></dd><dt id="GLOSSARY-VIEW"><span class="glossterm">View</span></dt><dd class="glossdef"><p>
1080 A <a class="glossterm" href="glossary.html#GLOSSARY-RELATION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RELATION" title="Relation">relation</a></em></a> that is defined by a
1081 <code class="command">SELECT</code> statement, but has no storage of its own.
1082 Any time a query references a view, the definition of the view is
1083 substituted into the query as if the user had typed it as a subquery
1084 instead of the name of the view.
1086 For more information, see
1087 <a class="xref" href="sql-createview.html" title="CREATE VIEW"><span class="refentrytitle">CREATE VIEW</span></a>.
1088 </p></dd><dt id="GLOSSARY-VM"><span class="glossterm">Visibility map (fork)</span></dt><dd class="glossdef"><p>
1089 A storage structure that keeps metadata about each data page
1090 of a table's main fork. The visibility map entry for
1091 each page stores two bits: the first one
1092 (<code class="literal">all-visible</code>) indicates that all tuples
1093 in the page are visible to all transactions. The second one
1094 (<code class="literal">all-frozen</code>) indicates that all tuples
1095 in the page are marked frozen.
1096 </p></dd><dt><span class="glossterm">WAL</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-WAL">Write-ahead log</a>.</p></dd><dt id="GLOSSARY-WAL-ARCHIVER"><span class="glossterm">WAL archiver (process)</span></dt><dd class="glossdef"><p>
1097 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
1098 which, if enabled, saves copies of
1099 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE" title="WAL file">WAL files</a></em></a>
1100 for the purpose of creating backups or keeping
1101 <a class="glossterm" href="glossary.html#GLOSSARY-REPLICA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICA" title="Replica (server)">replicas</a></em></a> current.
1103 For more information, see
1104 <a class="xref" href="continuous-archiving.html" title="25.3. Continuous Archiving and Point-in-Time Recovery (PITR)">Section 25.3</a>.
1105 </p></dd><dt id="GLOSSARY-WAL-FILE"><span class="glossterm">WAL file</span></dt><dd class="glossdef"><p>
1106 Also known as <em class="firstterm">WAL segment</em> or
1107 <em class="firstterm">WAL segment file</em>.
1108 Each of the sequentially-numbered files that provide storage space for
1109 <a class="glossterm" href="glossary.html#GLOSSARY-WAL"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL" title="Write-ahead log">WAL</a></em></a>.
1110 The files are all of the same predefined size
1111 and are written in sequential order, interspersing changes
1112 as they occur in multiple simultaneous sessions.
1113 If the system crashes, the files are read in order, and each of the
1114 changes is replayed to restore the system to the state it was in
1117 Each WAL file can be released after a
1118 <a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-CHECKPOINT" title="Checkpoint">checkpoint</a></em></a>
1119 writes all the changes in it to the corresponding data files.
1120 Releasing the file can be done either by deleting it, or by changing its
1121 name so that it will be used in the future, which is called
1122 <em class="firstterm">recycling</em>.
1124 For more information, see
1125 <a class="xref" href="wal-internals.html" title="28.6. WAL Internals">Section 28.6</a>.
1126 </p></dd><dt id="GLOSSARY-WAL-RECORD"><span class="glossterm">WAL record</span></dt><dd class="glossdef"><p>
1127 A low-level description of an individual data change.
1128 It contains sufficient information for the data change to be
1129 re-executed (<em class="firstterm">replayed</em>) in case a system failure
1130 causes the change to be lost.
1131 WAL records use a non-printable binary format.
1133 For more information, see
1134 <a class="xref" href="wal-internals.html" title="28.6. WAL Internals">Section 28.6</a>.
1135 </p></dd><dt id="GLOSSARY-WAL-RECEIVER"><span class="glossterm">WAL receiver (process)</span></dt><dd class="glossdef"><p>
1136 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
1137 that runs on a <a class="glossterm" href="glossary.html#GLOSSARY-REPLICA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICA" title="Replica (server)">replica</a></em></a>
1138 to receive WAL from the
1139 <a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PRIMARY-SERVER" title="Primary (server)">primary server</a></em></a>
1141 <a class="glossterm" href="glossary.html#GLOSSARY-STARTUP-PROCESS"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-STARTUP-PROCESS" title="Startup process">startup process</a></em></a>.
1143 For more information, see
1144 <a class="xref" href="warm-standby.html" title="26.2. Log-Shipping Standby Servers">Section 26.2</a>.
1145 </p></dd><dt><span class="glossterm">WAL segment</span></dt><dd><p>See <a class="glosssee" href="glossary.html#GLOSSARY-WAL-FILE">WAL file</a>.</p></dd><dt id="GLOSSARY-WAL-SENDER"><span class="glossterm">WAL sender (process)</span></dt><dd class="glossdef"><p>
1146 A special <a class="glossterm" href="glossary.html#GLOSSARY-BACKEND"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-BACKEND" title="Backend (process)">backend process</a></em></a>
1147 that streams WAL over a network. The receiving end can be a
1148 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECEIVER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECEIVER" title="WAL receiver (process)">WAL receiver</a></em></a>
1149 in a <a class="glossterm" href="glossary.html#GLOSSARY-REPLICA"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-REPLICA" title="Replica (server)">replica</a></em></a>,
1150 <a class="xref" href="app-pgreceivewal.html" title="pg_receivewal"><span class="refentrytitle"><span class="application">pg_receivewal</span></span></a>, or any other client program
1151 that speaks the replication protocol.
1152 </p></dd><dt id="GLOSSARY-WAL-SUMMARIZER"><span class="glossterm">WAL summarizer (process)</span></dt><dd class="glossdef"><p>
1153 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
1154 that summarizes WAL data for
1155 <a class="glossterm" href="glossary.html#GLOSSARY-INCREMENTAL-BACKUP"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-INCREMENTAL-BACKUP" title="Incremental backup">incremental backups</a></em></a>.
1157 For more information, see <a class="xref" href="runtime-config-wal.html#RUNTIME-CONFIG-WAL-SUMMARIZATION" title="19.5.7. WAL Summarization">Section 19.5.7</a>.
1158 </p></dd><dt id="GLOSSARY-WAL-WRITER"><span class="glossterm">WAL writer (process)</span></dt><dd class="glossdef"><p>
1159 An <a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AUXILIARY-PROC" title="Auxiliary process">auxiliary process</a></em></a>
1160 that writes <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD" title="WAL record">WAL records</a></em></a>
1161 from <a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-SHARED-MEMORY" title="Shared memory">shared memory</a></em></a> to
1162 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE" title="WAL file">WAL files</a></em></a>.
1164 For more information, see
1165 <a class="xref" href="runtime-config-wal.html" title="19.5. Write Ahead Log">Section 19.5</a>.
1166 </p></dd><dt id="GLOSSARY-WINDOW-FUNCTION"><span class="glossterm">Window function (routine)</span></dt><dd class="glossdef"><p>
1167 A type of <a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-FUNCTION" title="Function (routine)">function</a></em></a>
1168 used in a <a class="glossterm" href="glossary.html#GLOSSARY-QUERY"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-QUERY" title="Query">query</a></em></a>
1169 that applies to a <a class="glossterm" href="glossary.html#GLOSSARY-PARTITION"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-PARTITION" title="Partition">partition</a></em></a>
1170 of the query's <a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-RESULT-SET" title="Result set">result set</a></em></a>;
1171 the function's result is based on values found in
1172 <a class="glossterm" href="glossary.html#GLOSSARY-TUPLE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-TUPLE" title="Tuple">rows</a></em></a> of the same partition or frame.
1174 All <a class="glossterm" href="glossary.html#GLOSSARY-AGGREGATE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-AGGREGATE" title="Aggregate function (routine)">aggregate functions</a></em></a>
1175 can be used as window functions, but window functions can also be
1176 used to, for example, give ranks to each of the rows in the partition.
1177 Also known as <em class="firstterm">analytic functions</em>.
1179 For more information, see
1180 <a class="xref" href="tutorial-window.html" title="3.5. Window Functions">Section 3.5</a>.
1181 </p></dd><dt id="GLOSSARY-WAL"><span class="glossterm">Write-ahead log</span></dt><dd class="glossdef"><p>
1182 The journal that keeps track of the changes in the
1183 <a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-DB-CLUSTER" title="Database cluster">database cluster</a></em></a>
1184 as user- and system-invoked operations take place.
1185 It comprises many individual
1186 <a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-RECORD" title="WAL record">WAL records</a></em></a> written
1187 sequentially to <a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE"><em class="glossterm"><a class="glossterm" href="glossary.html#GLOSSARY-WAL-FILE" title="WAL file">WAL files</a></em></a>.
1188 </p></dd></dl></div></div><div class="navfooter"><hr /><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="acronyms.html" title="Appendix L. Acronyms">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="appendixes.html" title="Part VIII. Appendixes">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="color.html" title="Appendix N. Color Support">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix L. Acronyms </td><td width="20%" align="center"><a accesskey="h" href="index.html" title="PostgreSQL 18.0 Documentation">Home</a></td><td width="40%" align="right" valign="top"> Appendix N. Color Support</td></tr></table></div></body></html>