postgresql/doc/src/sgml
Thomas Munro 61752afb26 Provide recovery_init_sync_method=syncfs.
Since commit 2ce439f3 we have opened every file in the data directory
and called fsync() at the start of crash recovery.  This can be very
slow if there are many files, leading to field complaints of systems
taking minutes or even hours to begin crash recovery.

Provide an alternative method, for Linux only, where we call syncfs() on
every possibly different filesystem under the data directory.  This is
equivalent, but avoids faulting in potentially many inodes from
potentially slow storage.

The new mode comes with some caveats, described in the documentation, so
the default value for the new setting is "fsync", preserving the older
behavior.

Reported-by: Michael Brown <michael.brown@discourse.org>
Reviewed-by: Fujii Masao <masao.fujii@oss.nttdata.com>
Reviewed-by: Paul Guo <guopa@vmware.com>
Reviewed-by: Bruce Momjian <bruce@momjian.us>
Reviewed-by: Justin Pryzby <pryzby@telsasoft.com>
Reviewed-by: David Steele <david@pgmasters.net>
Discussion: https://postgr.es/m/11bc2bb7-ecb5-3ad0-b39f-df632734cd81%40discourse.org
Discussion: https://postgr.es/m/CAEET0ZHGnbXmi8yF3ywsDZvb3m9CbdsGZgfTXscQ6agcbzcZAw%40mail.gmail.com
2021-03-20 12:07:28 +13:00
..
images Replace genetic algorithm ASCII-art with a real figure 2019-08-19 12:05:38 -04:00
keywords Update SQL keywords list to SQL:2016 2019-05-14 15:44:37 +02:00
ref Allow configurable LZ4 TOAST compression. 2021-03-19 15:10:38 -04:00
.gitignore doc: Generate keywords table automatically 2019-05-07 15:29:39 +02:00
Makefile doc: Fix image use in PDF build with vpath 2019-08-19 10:30:47 +02:00
README.links doc: document problems with using xreflabel in XML docs 2020-06-11 18:44:49 -04:00
acronyms.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:35 +09:00
adminpack.sgml Doc: update remaining tables of functions/operators for new layout. 2020-05-07 14:25:25 -04:00
advanced.sgml docs: improve 'capitals' inheritance example 2020-08-31 13:43:05 -04:00
amcheck.sgml Add documentation chapter about checksums 2021-01-17 15:31:23 +01:00
arch-dev.sgml doc: Copy-edit the "Overview of PostgreSQL Internals" chapter 2021-01-22 11:10:42 +02:00
array.sgml Doc: correct nitpicky mistakes in array_position/array_positions examples. 2020-06-25 13:28:30 -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:14:41 +09:00
backup-manifest.sgml doc: Spell checking 2020-07-05 15:37:57 +02:00
backup.sgml doc: Mention archive_command failure handling on signals 2021-03-02 10:25:47 +09:00
bgworker.sgml Minor fixes in docs and error messages. 2020-09-09 11:53:39 -04:00
biblio.sgml Fix title in reference section 2020-09-10 14:15:26 +02:00
bki.sgml Remove special BKI_LOOKUP magic for namespace and role OIDs. 2021-02-03 12:01:48 -05:00
bloom.sgml doc: make blooms docs match reality 2020-10-26 19:17:05 -04:00
brin.sgml Doc: remove obsolete entries in table of BRIN strategy numbers. 2021-03-05 10:59:23 -05:00
btree-gin.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
btree-gist.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
btree.sgml Enhance nbtree index tuple deletion. 2021-01-13 09:21:32 -08:00
catalogs.sgml Allow configurable LZ4 TOAST compression. 2021-03-19 15:10:38 -04:00
charset.sgml Fix some typos, grammar and style in docs and comments 2021-02-24 16:13:17 +09:00
citext.sgml Add deduplication to nbtree. 2020-02-26 13:05:30 -08:00
client-auth.sgml Change the error message for logical replication authentication failure. 2021-02-23 09:11:22 +05:30
color.sgml Document color support 2020-03-29 11:15:11 +02:00
config.sgml Provide recovery_init_sync_method=syncfs. 2021-03-20 12:07:28 +13:00
contrib-spi.sgml Remove timetravel extension. 2018-10-11 11:43:56 -07:00
contrib.sgml Retire pg_standby. 2021-01-29 14:09:41 +13:00
cube.sgml Remove deprecated containment operators for contrib types. 2021-03-05 10:45:41 -05:00
custom-scan.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
datatype.sgml Doc: fix up PDF build warnings from over-width table columns. 2020-12-29 20:44:03 -05:00
datetime.sgml doc: Fix format, incorrect structure names and markup inconsistencies 2020-08-22 22:26:10 +09:00
dblink.sgml Misc documentation fixes. 2020-10-19 19:28:54 +03:00
ddl.sgml Doc: remove duplicated step in RLS example. 2021-03-17 16:39:58 -04:00
dfunc.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:35 +09:00
dict-int.sgml Add an "absval" parameter to allow contrib/dict_int to ignore signs. 2020-03-08 18:35:06 -04: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 Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +02:00
docguide.sgml Remove configure-time probe for DocBook DTD. 2020-11-30 15:24:13 -05:00
earthdistance.sgml Make contrib modules' installation scripts more secure. 2020-08-10 10:44:42 -04:00
ecpg.sgml Remove dead code in ECPGconnect(), and improve documentation. 2021-02-11 15:05:55 -05:00
errcodes.sgml Doc: remove now-redundant align specifications in colspecs. 2020-05-06 15:58:23 -04:00
event-trigger.sgml Doc: further fooling-about with rendering of tables in PDF output. 2020-05-06 12:23:54 -04:00
extend.sgml Fix some typos, grammar and style in docs and comments 2021-02-24 16:13:17 +09:00
external-projects.sgml Update link for pllua 2020-10-19 13:48:00 +02:00
fdwhandler.sgml Fix some typos, grammar and style in docs and comments 2021-02-24 16:13:17 +09:00
features.sgml doc: Clean up title case use 2020-06-07 13:18:36 +02:00
file-fdw.sgml Add leader_pid field into the example of file_fdw for csvlog. 2020-09-16 18:47:39 +09:00
filelist.sgml Retire pg_standby. 2021-01-29 14:09:41 +13:00
func.sgml Allow configurable LZ4 TOAST compression. 2021-03-19 15:10:38 -04:00
fuzzystrmatch.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
generate-errcodes-table.pl Update copyright for 2021 2021-01-02 13:06:25 -05:00
generate-keywords-table.pl Update copyright for 2021 2021-01-02 13:06:25 -05: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:35 +09:00
gin.sgml doc: Remove more notes about compatibilities with past versions 2020-12-01 16:32:26 +09:00
gist.sgml Doc: fix up PDF build warnings from over-width table columns. 2020-12-29 20:44:03 -05:00
glossary.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
high-availability.sgml Remove documentation of waiting restore_command. 2021-01-29 14:16:29 +13:00
history.sgml doc: Use proper em and en dashes 2019-10-25 20:39:41 +02:00
hstore.sgml Remove deprecated containment operators for contrib types. 2021-03-05 10:45:41 -05:00
indexam.sgml Pass down "logically unchanged index" hint. 2021-01-13 08:11:00 -08:00
indices.sgml Doc: minor improvements for section 11.2 "Index Types". 2020-11-25 14:04:28 -05:00
info.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
information_schema.sgml Routine usage information schema tables 2021-02-17 18:16:06 +01:00
install-binaries.sgml Expand installation documentation to cover binary installations 2020-10-06 14:15:32 +02:00
install-windows.sgml Add support for PROVE_TESTS and PROVE_FLAGS in MSVC scripts 2021-03-05 10:12:49 +09:00
installation.sgml Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09:00
intagg.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
intarray.sgml Remove deprecated containment operators for contrib types. 2021-03-05 10:45:41 -05:00
intro.sgml doc: Refresh more URLs in the docs 2020-07-18 22:43:35 +09:00
isn.sgml Misc documentation fixes. 2020-10-19 19:28:54 +03:00
jit.sgml Doc: tweak examples to silence line-too-long PDF build warnings. 2020-05-14 18:13:08 -04:00
json.sgml Fix vague comment in jsonb documentation 2021-03-09 18:16:03 +03:00
keywords.sgml Allow most keywords to be used as column labels without requiring AS. 2020-09-18 16:46:36 -04:00
legal.sgml Update copyright for 2021 2021-01-02 13:06:25 -05:00
libpq.sgml Implement pipeline mode in libpq 2021-03-15 18:13:42 -03:00
limits.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
lo.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
lobj.sgml Implement pipeline mode in libpq 2021-03-15 18:13:42 -03:00
logical-replication.sgml Clarify the usage of max_replication_slots on the subscriber side. 2021-03-03 12:01:56 +05:30
logicaldecoding.sgml Add option to enable two_phase commits via pg_create_logical_replication_slot. 2021-03-03 07:34:11 +05:30
ltree.sgml Misc documentation fixes. 2020-10-19 19:28:54 +03:00
maintenance.sgml Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +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 Initial pgindent and pgperltidy run for v13. 2020-05-14 13:06:50 -04:00
monitoring.sgml Make archiver process an auxiliary process. 2021-03-15 13:13:14 +09:00
mvcc.sgml Misc documentation fixes. 2020-10-19 19:28:54 +03:00
nls.sgml doc: improve NLS instruction wording 2021-01-05 14:26:37 -05:00
notation.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
oid2name.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
oldsnapshot.sgml Add new 'old_snapshot' contrib module. 2020-09-24 13:55:47 -04:00
pageinspect.sgml Use full 64-bit XIDs in deleted nbtree pages. 2021-02-24 18:41:34 -08:00
parallel.sgml Enable parallelism in REFRESH MATERIALIZED VIEW. 2021-03-17 15:04:17 +13:00
passwordcheck.sgml doc: Update cracklib URL 2020-08-28 08:19:12 +02:00
perform.sgml Fix sample output of EXPLAIN ANALYZE. 2021-01-20 22:38:24 +13:00
pgbuffercache.sgml Doc: reformat catalog/view description tables. 2020-05-13 23:03:39 -04:00
pgcrypto.sgml Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09:00
pgfreespacemap.sgml docs: Remove notes about incompatibilies with very old versions. 2020-10-26 09:07:14 +02:00
pgprewarm.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
pgrowlocks.sgml Fix documentation of pgrowlocks using "lock_type" instead of "modes" 2018-10-02 16:34:41 +09:00
pgstatstatements.sgml Fix typos and grammar in docs and comments 2020-12-24 17:05:49 +09:00
pgstattuple.sgml Revert "Avoid the creation of the free space map for small heap relations". 2019-05-07 09:30:24 +05:30
pgsurgery.sgml New contrib module, pg_surgery, with heap surgery functions. 2020-09-10 11:14:07 -04:00
pgtrgm.sgml doc: Get rid of unnecessary space character from some index items. 2020-11-24 17:00:16 +09:00
pgvisibility.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
planstats.sgml Doc: tweak examples to silence line-too-long PDF build warnings. 2020-05-14 18:13:08 -04:00
plhandler.sgml Add PL/Sample to src/test/modules/ 2020-08-18 11:10:50 +09:00
plperl.sgml dummy commit 2020-12-23 09:33:20 -05:00
plpgsql.sgml Doc: improve discussion of variable substitution in PL/pgSQL. 2021-03-17 13:09:13 -04:00
plpython.sgml dummy commit 2020-12-23 09:33:20 -05:00
pltcl.sgml dummy commit 2020-12-23 09:33:20 -05:00
postgres-fdw.sgml Fix some typos, grammar and style in docs and comments 2021-02-24 16:13:17 +09:00
postgres.sgml Revert "Add key management system" (978f869b99) & later commits 2020-12-27 21:37:42 -05:00
problems.sgml Fix inconsistencies and typos in the tree 2019-07-22 10:01:50 +09:00
protocol.sgml Mark default_transaction_read_only as GUC_REPORT. 2021-03-02 13:53:54 -05:00
queries.sgml Implement GROUP BY DISTINCT 2021-03-18 18:22:18 +01:00
query.sgml Doc: fix description of how to use src/tutorial files. 2020-12-20 15:28:22 -05:00
rangetypes.sgml Add support of multirange matching to the existing range GiST indexes 2020-12-29 23:36:43 +03:00
reference.sgml Add pg_amcheck, a CLI for contrib/amcheck. 2021-03-12 13:00:01 -05:00
regress.sgml Replace CLOBBER_CACHE_ALWAYS with run-time GUC 2021-01-06 10:46:44 +01:00
release-14.sgml Stamp HEAD as 14devel. 2020-06-07 17:16:30 -04:00
release.sgml Stamp HEAD as 14devel. 2020-06-07 17:16:30 -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: get rid of <foreignphrase> tags. 2021-03-10 12:38:43 -05:00
runtime.sgml Doc: update example connection-failure messages in the documentation. 2021-01-23 15:50:51 -05:00
seg.sgml Remove deprecated containment operators for contrib types. 2021-03-05 10:45:41 -05:00
sepgsql.sgml Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +02:00
sourcerepo.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
sources.sgml Fix typos and grammar in docs and comments 2020-12-24 17:05:49 +09:00
spgist.sgml Rename the "point is strictly above/below point" comparison operators. 2020-11-23 11:38:37 -05:00
spi.sgml Rethink recently-added SPI interfaces. 2021-01-26 16:37:12 -05:00
sslinfo.sgml Introduce --with-ssl={openssl} as a configure option 2021-02-01 19:19:44 +09:00
standalone-install.xml Doc: tweak installation doc edits made by commit 76c2af926. 2019-09-06 11:24:42 -04:00
standalone-profile.xsl Update to DocBook 4.5 2019-08-13 08:40:17 +02:00
start.sgml Doc: update example connection-failure messages in the documentation. 2021-01-23 15:50:51 -05:00
storage.sgml Revert "Add key management system" (978f869b99) & later commits 2020-12-27 21:37:42 -05:00
stylesheet-common.xsl Doc: re-re-revise markup for tables of functions. 2020-04-30 00:34:12 -04:00
stylesheet-fo.xsl Doc: reformat catalog/view description tables. 2020-05-13 23:03:39 -04:00
stylesheet-hh.xsl doc: Add some images 2019-03-27 23:10:23 +01:00
stylesheet-html-common.xsl Recreate website's formatting for "website" doc builds. 2020-02-14 18:38:35 -08: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
stylesheet-speedup-xhtml.xsl
stylesheet-text.xsl Create INSTALL file via XSLT 2017-03-08 08:41:23 -05:00
stylesheet.css Doc: reformat catalog/view description tables. 2020-05-13 23:03:39 -04:00
stylesheet.xsl Fix docs build for website styles 2021-02-22 13:04:10 +01:00
syntax.sgml Remove operator_precedence_warning. 2020-12-08 16:29:52 -05:00
tableam.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
tablefunc.sgml Doc: update remaining tables of functions/operators for new layout. 2020-05-07 14:25:25 -04:00
tablesample-method.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
tcn.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
test-decoding.sgml Implement streaming mode in ReorderBuffer. 2020-08-08 07:47:06 +05:30
textsearch.sgml Update snowball 2021-02-19 08:10:15 +01:00
trigger.sgml Enable BEFORE row-level triggers for partitioned tables 2020-03-18 18:58:05 -03:00
tsm-system-rows.sgml Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +02:00
tsm-system-time.sgml Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +02:00
typeconv.sgml Doc: get rid of <foreignphrase> tags. 2021-03-10 12:38:43 -05:00
unaccent.sgml Mark some contrib modules as "trusted". 2020-02-13 15:02:35 -05:00
user-manag.sgml Clarify that CREATEROLE roles are considered Administrators 2021-03-06 18:12:26 +01:00
uuid-ossp.sgml docs: ulink all references to RFC's 2020-12-01 14:36:30 +02:00
vacuumlo.sgml doc: remove xreflabels from commits 75fcdd2ae2 and 85af628da5 2020-06-11 18:19:25 -04:00
wal.sgml Track total amounts of times spent writing and syncing WAL data to disk. 2021-03-09 16:52:06 +09:00
xaggr.sgml Declare assorted array functions using anycompatible not anyelement. 2020-11-04 16:09:55 -05:00
xfunc.sgml Doc: improve introductory information about procedures. 2021-03-10 11:33:50 -05:00
xindex.sgml Doc: adjust documentation related to index support functions. 2020-09-09 12:00:49 -04:00
xml2.sgml doc: add commas after 'i.e.' and 'e.g.' 2020-08-31 18:33:37 -04:00
xoper.sgml Remove support for postfix (right-unary) operators. 2020-09-17 19:38:05 -04:00
xplang.sgml Improve <xref> vs. <command> formatting in the documentation 2020-10-03 16:40:02 +02:00
xtypes.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00

README.links

<!-- 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

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

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


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.

- xreflabels added to tags prevent the chapter/section for id's from being
  referenced;  only the xreflabel is accessible.  Therefore, use xreflabels
  only when linking is common, and chapter/section information is unneeded.