postgresql/doc/src/sgml
Bruce Momjian 7b96f525cd doc: add transaction processing chapter with internals info
This also adds references to this new chapter at relevant sections of
our documentation.  Previously much of these internal details were
exposed to users, but not explained.  This also updates RELEASE
SAVEPOINT.

Discussion: https://postgr.es/m/CANbhV-E_iy9fmrErxrCh8TZTyenpfo72Hf_XD2HLDppva4dUNA@mail.gmail.com

Author: Simon Riggs, Laurenz Albe

Reviewed-by: Bruce Momjian

Backpatch-through: 11
2022-11-29 20:49:52 -05:00
..
images Add XSL stylesheet to fix up SVG files 2019-06-19 21:26:42 +02:00
keywords Update SQL keywords list to SQL:2016 2019-05-14 15:44:37 +02:00
ref doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
.gitignore doc: Generate keywords table automatically 2019-05-07 15:29:39 +02:00
acronyms.sgml doc: add section about heap-only tuples (HOT) 2022-08-12 15:05:12 -04:00
adminpack.sgml Support new default roles with adminpack 2018-04-06 14:47:10 -04:00
advanced.sgml doc: adjust "cities" example to be consistent with other SQL 2021-07-02 20:42:46 -04:00
amcheck.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
appendix-obsolete-pgreceivexlog.sgml Add a docs section for obsoleted and renamed functions and settings 2021-03-31 16:23:13 -04:00
appendix-obsolete-pgresetxlog.sgml Add a docs section for obsoleted and renamed functions and settings 2021-03-31 16:23:13 -04:00
appendix-obsolete-pgxlogdump.sgml Add a docs section for obsoleted and renamed functions and settings 2021-03-31 16:23:13 -04:00
appendix-obsolete-recovery-config.sgml Add a docs section for obsoleted and renamed functions and settings 2021-03-31 16:23:13 -04:00
appendix-obsolete.sgml Add a docs section for obsoleted and renamed functions and settings 2021-03-31 16:23:13 -04:00
arch-dev.sgml Fix missing space in docs. 2021-11-24 18:34:20 +02:00
array.sgml docs: remove use of escape strings and use bytea hex output 2018-09-21 19:55:07 -04:00
auth-delay.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
auto-explain.sgml Fix some grammar and typos in comments and docs 2020-11-02 15:15:25 +09:00
backup.sgml doc: add example of using pg_dump with GNU split and gzip 2021-08-03 10:57:32 -04:00
bgworker.sgml docs: clarify bgw_restart_time documentation 2021-08-27 22:50:19 +02:00
biblio.sgml doc: Remove link to JSON support in the SQL specification 2022-01-06 11:41:47 +09:00
bki.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
bloom.sgml doc: make blooms docs match reality 2020-10-26 19:17:05 -04:00
brin.sgml BRIN: improve documentation on summarization 2022-07-05 13:38:26 +02:00
btree-gin.sgml Add support of bool, bpchar, name and uuid to btree_gin 2018-04-05 18:19:10 +03:00
btree-gist.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
btree.sgml doc: Spell checking 2019-07-05 08:33:51 +02:00
catalogs.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
charset.sgml doc: remove URL for ICU explorer/locexp 2021-10-04 17:10:59 -04:00
citext.sgml Collations with nondeterministic comparison 2019-03-22 12:12:43 +01:00
client-auth.sgml doc: clarify that auth. names are lower case and case-sensitive 2022-07-21 13:58:32 -04:00
config.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
contrib-spi.sgml Remove timetravel extension. 2018-10-11 11:43:56 -07:00
contrib.sgml doc: Fix typos 2020-11-25 09:53:24 +01:00
cube.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:45 +09:00
custom-scan.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
datatype.sgml doc: document the maximum char/varchar length value 2022-08-31 19:43:06 -04:00
datetime.sgml Doc: fix bogus example about ambiguous timestamps. 2022-01-10 11:46:33 -05:00
dblink.sgml Misc documentation fixes. 2020-10-19 19:29:54 +03:00
ddl.sgml Doc: clarify partitioned table limitations 2022-09-05 18:45:17 +12:00
dfunc.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:45 +09:00
dict-int.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
dict-xsyn.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
diskusage.sgml Fix many typos and inconsistencies 2019-07-01 10:00:23 +09:00
dml.sgml doc: Fix up title case 2020-08-25 07:31:12 +02:00
docguide.sgml doc: Fix link to FreeBSD documentation project 2022-09-12 22:17:17 +02:00
earthdistance.sgml Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
ecpg.sgml doc: add documentation about ecpg Oracle-compatibility mode 2022-07-14 16:19:45 -04:00
errcodes.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
event-trigger.sgml doc: Add ALTER/DROP ROUTINE to the event trigger matrix 2022-03-09 14:59:26 +09:00
extend.sgml In extensions, don't replace objects not belonging to the extension. 2022-08-08 11:12:31 -04:00
external-projects.sgml Update link for pllua 2020-10-19 13:48:17 +02:00
fdwhandler.sgml Clamp total-tuples estimates for foreign tables to ensure planner sanity. 2020-07-03 19:01:21 -04:00
features.sgml doc: Clean up title case use 2020-06-07 13:19:25 +02:00
file-fdw.sgml doc: cross-link file-fdw and CSV config log sections 2020-08-31 16:59:58 -04:00
filelist.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
func.sgml doc: move the mention of aggregate JSON functions up in section 2022-10-17 15:21:29 -04:00
fuzzystrmatch.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
generate-errcodes-table.pl Update copyright for 2019 2019-01-02 12:44:25 -05:00
generate-keywords-table.pl Update SQL keywords list to SQL:2016 2019-05-14 15:44:37 +02:00
generic-wal.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
geqo.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:45 +09:00
gin.sgml Misc documentation fixes. 2020-10-19 19:29:54 +03:00
gist.sgml doc: remove xreflabels from commits 75fcdd2ae2 and 85af628da5 2020-06-11 18:19:25 -04:00
hash.sgml Doc: Hash Indexes. 2021-07-05 10:01:28 +05:30
high-availability.sgml doc: clarify wording about phantom reads 2022-06-22 14:33:38 -04:00
history.sgml doc: Update redirecting links 2018-07-16 10:48:05 +02:00
hstore.sgml doc: Clarify use of ACCESS EXCLUSIVE lock in various sections 2021-04-01 15:28:56 +09:00
indexam.sgml doc: add section about heap-only tuples (HOT) 2022-08-12 15:05:12 -04:00
indices.sgml doc: mention "bloom" as a possible index access method 2022-08-31 22:35:09 -04:00
info.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
information_schema.sgml Fix documentation of check_option in information_schema.views 2019-06-01 15:33:47 -04:00
install-windows.sgml doc: clarify configuration file for Windows builds 2022-08-12 11:35:23 -04:00
installation.sgml Reject bogus output from uuid_create(3). 2022-09-09 12:41:36 -04:00
intagg.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
intarray.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
intro.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:45 +09:00
isn.sgml Misc documentation fixes. 2020-10-19 19:29:54 +03:00
jit.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
json.sgml Doc: copy-edit "jsonb Indexing" section. 2022-06-08 12:01:51 -04:00
keywords.sgml doc: Generate keywords table automatically 2019-05-07 15:29:39 +02:00
legal.sgml Update copyright for 2022 2022-01-07 19:04:56 -05:00
libpq.sgml doc: Fix PQsslAttribute docs for compression 2022-09-30 12:03:48 +02:00
limits.sgml Doc: mention limitation of the number of resultset columns 2022-06-01 12:47:27 +12:00
lo.sgml Change PROCEDURE to FUNCTION in CREATE TRIGGER syntax 2018-08-22 14:44:49 +02:00
lobj.sgml Doc: fix typos. 2021-09-19 11:36:53 -04:00
logical-replication.sgml Clarify the usage of max_replication_slots on the subscriber side. 2021-03-03 10:30:27 +05:30
logicaldecoding.sgml Doc: Update caveats in synchronous logical replication. 2021-06-24 09:37:57 +05:30
ltree.sgml Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
maintenance.sgml doc: warn about security issues around log files 2022-08-12 12:02:20 -04:00
Makefile doc: Fix image use in PDF build with vpath 2019-08-19 10:32:14 +02:00
manage-ag.sgml docs: improve description of how to handle multiple databases 2020-08-21 20:23:09 -04:00
mk_feature_tables.pl Reindent Perl files with perltidy version 20170521. 2018-04-25 14:00:19 -04:00
monitoring.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
mvcc.sgml doc: mention the pg_locks lock names in parentheses 2022-07-14 12:08:54 -04:00
nls.sgml doc: improve NLS instruction wording 2021-01-05 14:26:37 -05:00
notation.sgml doc: clarify syntax notation, particularly parentheses 2022-02-02 21:53:51 -05:00
oid2name.sgml Rework option set of oid2name 2018-08-28 21:33:32 +09:00
pageinspect.sgml Fix some typos, grammar and style in docs and comments 2021-02-24 16:14:00 +09:00
parallel.sgml doc: Replace some uses of "which" by "that" in parallel.sgml 2021-09-02 11:36:06 +09:00
passwordcheck.sgml doc: Update redirecting links 2018-07-16 10:48:05 +02:00
perform.sgml doc: use wording "restore" instead of "reload" of dumps 2022-07-21 14:55:23 -04:00
pgbuffercache.sgml Fix inconsistency in pg_buffercache docs. 2020-05-08 08:47:51 +05:30
pgcrypto.sgml Add alternative output for OpenSSL 3 without legacy loaded 2021-09-25 11:27:28 +02:00
pgfreespacemap.sgml Revert "Avoid the creation of the free space map for small heap relations". 2019-05-07 09:30:24 +05:30
pgprewarm.sgml doc: add pg_prewarm example 2022-07-08 18:36:27 -04:00
pgrowlocks.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
pgstandby.sgml Integrate recovery.conf into postgresql.conf 2018-11-25 16:33:40 +01:00
pgstatstatements.sgml Extend pg_stat_statements_reset to reset statistics specific to a 2019-01-11 08:50:09 +05:30
pgstattuple.sgml Revert "Avoid the creation of the free space map for small heap relations". 2019-05-07 09:30:24 +05:30
pgtrgm.sgml Add docs of missing GUC to pgtrgm.sgml 2019-06-10 19:42:36 +03:00
pgvisibility.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
planstats.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
plhandler.sgml doc: use wording "restore" instead of "reload" of dumps 2022-07-21 14:55:23 -04:00
plperl.sgml docs: document which server-side languages can create procs 2020-12-23 09:37:38 -05:00
plpgsql.sgml doc: improve wording of plpgsql RAISE format text 2022-06-22 16:59:53 -04:00
plpython.sgml doc: Fix mistake in PL/Python documentation 2022-02-02 09:16:24 +01:00
pltcl.sgml doc: clarify syntax notation, particularly parentheses 2022-02-02 21:53:51 -05:00
postgres-fdw.sgml Doc: Update documentation for modifying postgres_fdw foreign tables. 2022-02-16 15:15:05 +09:00
postgres.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
problems.sgml Doc: Fix various typos 2019-08-20 13:45:53 +09:00
protocol.sgml Force immediate commit after CREATE DATABASE etc in extended protocol. 2022-07-26 13:07:03 -04:00
queries.sgml doc: clarify internal behavior of RECURSIVE CTE queries 2022-09-28 13:14:38 -04:00
query.sgml Doc: improve tutorial section about grouped aggregates. 2022-11-08 18:25:03 -05:00
rangetypes.sgml docs: clarify infinite range values from data-type infinities 2019-12-27 14:33:30 -05:00
README.links doc: Refine README.links further 2019-03-29 13:36:24 +01:00
reference.sgml Rename pg_verify_checksums to pg_checksums 2019-03-13 10:43:20 +09:00
regress.sgml doc: Mention requirement to --enable-tap-tests on section for TAP tests 2021-07-04 20:59:19 +09:00
release-12.sgml Release notes for 15.1, 14.6, 13.9, 12.13, 11.18, 10.23. 2022-11-06 11:07:28 -05:00
release.sgml Doc: remove obsolete comment about per-branch documentation. 2019-05-03 12:32:06 -04:00
replication-origins.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
rowtypes.sgml docs: remove use of escape strings and use bytea hex output 2018-09-21 19:55:07 -04:00
rules.sgml Doc: improve documentation about ORDER BY in matviews. 2021-11-29 12:13:13 -05:00
runtime.sgml Doc: improve recommended systemd unit file. 2022-10-12 10:51:40 -04:00
seg.sgml Misc documentation fixes. 2020-10-19 19:29:54 +03:00
sepgsql.sgml doc: Fix link to SELinux user guide in sepgsql page 2021-10-28 09:26:21 +09:00
sourcerepo.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
sources.sgml Avoid using ambiguous word "non-negative" in error messages. 2021-07-28 01:24:24 +09:00
spgist.sgml Prevent infinite insertion loops in spgdoinsert(). 2021-05-14 15:07:34 -04:00
spi.sgml Fix SPI's handling of errors during transaction commit. 2022-06-22 12:12:00 -04:00
sslinfo.sgml Add missing comma in list of SSL versions 2020-11-02 15:20:45 +01:00
standalone-install.xml Doc: tweak installation doc edits made by commit 76c2af926. 2019-09-06 12:10:29 -04:00
standalone-profile.xsl Get rid of parameterized marked sections in SGML 2017-09-27 11:26:08 -04:00
start.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
storage.sgml doc: add section about heap-only tuples (HOT) 2022-08-12 15:05:12 -04:00
stylesheet-common.xsl doc: Turn on generate.consistent.ids parameter 2017-12-05 09:00:26 -05:00
stylesheet-fo.xsl doc: Improve PDF bookmarks 2017-08-15 14:37:44 -04:00
stylesheet-hh.xsl doc: Add some images 2019-03-27 23:10:23 +01:00
stylesheet-html-common.xsl Better scaling of images in HTML output 2019-04-16 14:27:56 +02:00
stylesheet-html-nochunk.xsl doc: Add some images 2019-03-27 23:10:23 +01:00
stylesheet-man.xsl doc: Improve man build speed 2018-02-28 09:26:36 -05:00
stylesheet-speedup-common.xsl doc: Further speed improvements for HTML XSLT build 2016-12-22 15:41:44 -05:00
stylesheet-speedup-xhtml.xsl doc: Further speed improvements for HTML XSLT build 2016-12-22 15:41:44 -05:00
stylesheet-text.xsl Create INSTALL file via XSLT 2017-03-08 08:41:23 -05:00
stylesheet.css Better scaling of images in HTML output 2019-04-16 14:27:56 +02:00
stylesheet.xsl doc: Don't hide the "Up" link when it is the same as "Home" 2020-09-12 20:30:49 +02:00
syntax.sgml doc: improve description of subscripting of arrays 2020-08-31 13:49:17 -04:00
tableam.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
tablefunc.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
tablesample-method.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
tcn.sgml Change PROCEDURE to FUNCTION in CREATE TRIGGER syntax 2018-08-22 14:44:49 +02:00
test-decoding.sgml doc: Fix reference to "decoder" to instead be the correct "output plugin". 2018-07-24 10:42:59 -07:00
textsearch.sgml Replace link to Hunspell with the current homepage 2022-11-21 23:25:48 +01:00
trigger.sgml Fix docs regarding AFTER triggers on partitioned tables 2020-02-26 19:57:14 -03:00
tsm-system-rows.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
tsm-system-time.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
typeconv.sgml Doc: clarify data type behavior of COALESCE and NULLIF. 2020-11-09 12:02:24 -05:00
unaccent.sgml Make contrib/unaccent's unaccent() function work when not in search path. 2018-09-06 10:49:45 -04:00
user-manag.sgml doc: add missing role attributes to user management section 2022-08-12 15:43:23 -04:00
uuid-ossp.sgml Reject bogus output from uuid_create(3). 2022-09-09 12:41:36 -04:00
vacuumlo.sgml doc: remove xreflabels from commits 75fcdd2ae2 and 85af628da5 2020-06-11 18:19:25 -04:00
wal.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
xact.sgml doc: add transaction processing chapter with internals info 2022-11-29 20:49:52 -05:00
xaggr.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
xfunc.sgml Doc: improve xfunc-c-type-table. 2021-12-08 16:54:31 -05:00
xindex.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
xml2.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
xoper.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00
xplang.sgml Doc: Fix various typos 2019-08-20 13:45:53 +09:00
xtypes.sgml doc: Clean up title case use 2019-09-08 10:27:16 +02:00

<!-- doc/src/sgml/README.links -->

Linking within DocBook documents can be confusing, so here is a summary:


Intra-document Linking
----------------------

<xref>
	use to get chapter/section number from the title of the target
	link, or xreflabel if defined at the target, or refentrytitle if target
        is a refentry;  has no close tag
	http://www.oasis-open.org/docbook/documentation/reference/html/xref.html

<link>
	use to supply text for the link, requires </link>
	http://www.oasis-open.org/docbook/documentation/reference/html/link.html

linkend=
	controls the target of the link/xref, required

endterm=
	for <xref>, allows the text of the link/xref to be taken from a
	different link target title


External Linking
----------------

<ulink>
	like <link>, but uses a URL (not a document target);  requires
	</ulink>; if no text is specified, the URL appears as the link
	text
	http://www.oasis-open.org/docbook/documentation/reference/html/ulink.html

url=
	used by <ulink> to specify the URL, required


Guidelines
----------

- For an internal link, if you want to supply text, use <link>, else
  <xref>.

- Specific nouns like GUC variables, SQL commands, and contrib modules
  usually have xreflabels.

- For an external link, use <ulink>, with or without link text.