2010-09-20 22:08:53 +02:00
|
|
|
<!-- doc/src/sgml/filelist.sgml -->
|
2000-11-24 18:44:22 +01:00
|
|
|
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY history SYSTEM "history.sgml">
|
|
|
|
<!ENTITY info SYSTEM "info.sgml">
|
|
|
|
<!ENTITY intro SYSTEM "intro.sgml">
|
|
|
|
<!ENTITY legal SYSTEM "legal.sgml">
|
|
|
|
<!ENTITY notation SYSTEM "notation.sgml">
|
|
|
|
<!ENTITY problems SYSTEM "problems.sgml">
|
2000-11-24 18:44:22 +01:00
|
|
|
|
|
|
|
<!-- tutorial -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY advanced SYSTEM "advanced.sgml">
|
|
|
|
<!ENTITY query SYSTEM "query.sgml">
|
|
|
|
<!ENTITY start SYSTEM "start.sgml">
|
2000-11-24 18:44:22 +01:00
|
|
|
|
|
|
|
<!-- user's guide -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY array SYSTEM "array.sgml">
|
|
|
|
<!ENTITY datatype SYSTEM "datatype.sgml">
|
|
|
|
<!ENTITY ddl SYSTEM "ddl.sgml">
|
|
|
|
<!ENTITY dml SYSTEM "dml.sgml">
|
|
|
|
<!ENTITY func SYSTEM "func.sgml">
|
|
|
|
<!ENTITY indices SYSTEM "indices.sgml">
|
Introduce jsonb, a structured format for storing json.
The new format accepts exactly the same data as the json type. However, it is
stored in a format that does not require reparsing the orgiginal text in order
to process it, making it much more suitable for indexing and other operations.
Insignificant whitespace is discarded, and the order of object keys is not
preserved. Neither are duplicate object keys kept - the later value for a given
key is the only one stored.
The new type has all the functions and operators that the json type has,
with the exception of the json generation functions (to_json, json_agg etc.)
and with identical semantics. In addition, there are operator classes for
hash and btree indexing, and two classes for GIN indexing, that have no
equivalent in the json type.
This feature grew out of previous work by Oleg Bartunov and Teodor Sigaev, which
was intended to provide similar facilities to a nested hstore type, but which
in the end proved to have some significant compatibility issues.
Authors: Oleg Bartunov, Teodor Sigaev, Peter Geoghegan and Andrew Dunstan.
Review: Andres Freund
2014-03-23 21:40:19 +01:00
|
|
|
<!ENTITY json SYSTEM "json.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY mvcc SYSTEM "mvcc.sgml">
|
2016-09-21 14:37:02 +02:00
|
|
|
<!ENTITY parallel SYSTEM "parallel.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY perform SYSTEM "perform.sgml">
|
|
|
|
<!ENTITY queries SYSTEM "queries.sgml">
|
2011-11-14 21:15:53 +01:00
|
|
|
<!ENTITY rangetypes SYSTEM "rangetypes.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY rowtypes SYSTEM "rowtypes.sgml">
|
|
|
|
<!ENTITY syntax SYSTEM "syntax.sgml">
|
|
|
|
<!ENTITY textsearch SYSTEM "textsearch.sgml">
|
|
|
|
<!ENTITY typeconv SYSTEM "typeconv.sgml">
|
2000-11-24 18:44:22 +01:00
|
|
|
|
|
|
|
<!-- administrator's guide -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY backup SYSTEM "backup.sgml">
|
|
|
|
<!ENTITY charset SYSTEM "charset.sgml">
|
|
|
|
<!ENTITY client-auth SYSTEM "client-auth.sgml">
|
|
|
|
<!ENTITY diskusage SYSTEM "diskusage.sgml">
|
|
|
|
<!ENTITY high-availability SYSTEM "high-availability.sgml">
|
2020-10-06 14:15:32 +02:00
|
|
|
<!ENTITY installbin SYSTEM "install-binaries.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY installation SYSTEM "installation.sgml">
|
2023-11-21 02:46:40 +01:00
|
|
|
<!ENTITY targets-meson SYSTEM "targets-meson.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY maintenance SYSTEM "maintenance.sgml">
|
|
|
|
<!ENTITY manage-ag SYSTEM "manage-ag.sgml">
|
|
|
|
<!ENTITY monitoring SYSTEM "monitoring.sgml">
|
Generate automatically code and documentation related to wait events
The documentation and the code is generated automatically from a new
file called wait_event_names.txt, formatted in sections dedicated to
each wait event class (Timeout, Lock, IO, etc.) with three tab-separated
fields:
- C symbol in enums
- Format in the system views
- Description in the docs
Using this approach has several advantages, as we have proved to be
rather bad in maintaining this area of the tree across the years:
- The order of each item in the documentation and the code, which should
be alphabetical, has become incorrect multiple times, and the script
generating the code and documentation has a few rules to enforce that,
making the maintenance a no-brainer.
- Some wait events were added to the code, but not documented, so this
cannot be missed now.
- The order of the tables for each wait event class is enforced in the
documentation (the input .txt file does so as well for clarity, though
this is not mandatory).
- Less code, shaving 1.2k lines from the tree, with 1/3 of the savings
coming from the code, the rest from the documentation.
The wait event types "Lock" and "LWLock" still have their own code path
for their code, hence only the documentation is created for them. These
classes are listed with a special marker called WAIT_EVENT_DOCONLY in
the input file.
Adding a new wait event now requires only an update of
wait_event_names.txt, with "Lock" and "LWLock" treated as exceptions.
This commit has been tested with configure/Makefile, the CI and VPATH
build. clean, distclean and maintainer-clean were working fine.
Author: Bertrand Drouvot, Michael Paquier
Discussion: https://postgr.es/m/77a86b3a-c4a8-5f5d-69b9-d70bbf2e9b98@gmail.com
2023-07-05 03:53:11 +02:00
|
|
|
<!ENTITY wait_event_types SYSTEM "wait_event_types.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY regress SYSTEM "regress.sgml">
|
|
|
|
<!ENTITY runtime SYSTEM "runtime.sgml">
|
|
|
|
<!ENTITY config SYSTEM "config.sgml">
|
|
|
|
<!ENTITY user-manag SYSTEM "user-manag.sgml">
|
|
|
|
<!ENTITY wal SYSTEM "wal.sgml">
|
2017-01-19 18:00:00 +01:00
|
|
|
<!ENTITY logical-replication SYSTEM "logical-replication.sgml">
|
2018-03-28 23:22:42 +02:00
|
|
|
<!ENTITY jit SYSTEM "jit.sgml">
|
2000-11-24 18:44:22 +01:00
|
|
|
|
|
|
|
<!-- programmer's guide -->
|
Background worker processes
Background workers are postmaster subprocesses that run arbitrary
user-specified code. They can request shared memory access as well as
backend database connections; or they can just use plain libpq frontend
database connections.
Modules listed in shared_preload_libraries can register background
workers in their _PG_init() function; this is early enough that it's not
necessary to provide an extra GUC option, because the necessary extra
resources can be allocated early on. Modules can install more than one
bgworker, if necessary.
Care is taken that these extra processes do not interfere with other
postmaster tasks: only one such process is started on each ServerLoop
iteration. This means a large number of them could be waiting to be
started up and postmaster is still able to quickly service external
connection requests. Also, shutdown sequence should not be impacted by
a worker process that's reasonably well behaved (i.e. promptly responds
to termination signals.)
The current implementation lets worker processes specify their start
time, i.e. at what point in the server startup process they are to be
started: right after postmaster start (in which case they mustn't ask
for shared memory access), when consistent state has been reached
(useful during recovery in a HOT standby server), or when recovery has
terminated (i.e. when normal backends are allowed).
In case of a bgworker crash, actions to take depend on registration
data: if shared memory was requested, then all other connections are
taken down (as well as other bgworkers), just like it were a regular
backend crashing. The bgworker itself is restarted, too, within a
configurable timeframe (which can be configured to be never).
More features to add to this framework can be imagined without much
effort, and have been discussed, but this seems good enough as a useful
unit already.
An elementary sample module is supplied.
Author: Álvaro Herrera
This patch is loosely based on prior patches submitted by KaiGai Kohei,
and unsubmitted code by Simon Riggs.
Reviewed by: KaiGai Kohei, Markus Wanner, Andres Freund,
Heikki Linnakangas, Simon Riggs, Amit Kapila
2012-12-06 18:57:52 +01:00
|
|
|
<!ENTITY bgworker SYSTEM "bgworker.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY dfunc SYSTEM "dfunc.sgml">
|
|
|
|
<!ENTITY ecpg SYSTEM "ecpg.sgml">
|
|
|
|
<!ENTITY extend SYSTEM "extend.sgml">
|
|
|
|
<!ENTITY external-projects SYSTEM "external-projects.sgml">
|
|
|
|
<!ENTITY func-ref SYSTEM "func-ref.sgml">
|
|
|
|
<!ENTITY infoschema SYSTEM "information_schema.sgml">
|
|
|
|
<!ENTITY libpq SYSTEM "libpq.sgml">
|
|
|
|
<!ENTITY lobj SYSTEM "lobj.sgml">
|
|
|
|
<!ENTITY rules SYSTEM "rules.sgml">
|
|
|
|
<!ENTITY spi SYSTEM "spi.sgml">
|
|
|
|
<!ENTITY trigger SYSTEM "trigger.sgml">
|
2012-07-18 16:16:16 +02:00
|
|
|
<!ENTITY event-trigger SYSTEM "event-trigger.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY xaggr SYSTEM "xaggr.sgml">
|
|
|
|
<!ENTITY xfunc SYSTEM "xfunc.sgml">
|
|
|
|
<!ENTITY xindex SYSTEM "xindex.sgml">
|
|
|
|
<!ENTITY xplang SYSTEM "xplang.sgml">
|
|
|
|
<!ENTITY xoper SYSTEM "xoper.sgml">
|
|
|
|
<!ENTITY xtypes SYSTEM "xtypes.sgml">
|
|
|
|
<!ENTITY plperl SYSTEM "plperl.sgml">
|
|
|
|
<!ENTITY plpython SYSTEM "plpython.sgml">
|
|
|
|
<!ENTITY plsql SYSTEM "plpgsql.sgml">
|
|
|
|
<!ENTITY pltcl SYSTEM "pltcl.sgml">
|
2000-11-24 18:44:22 +01:00
|
|
|
|
2003-10-23 00:28:10 +02:00
|
|
|
<!-- reference pages -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY % allfiles SYSTEM "ref/allfiles.sgml">
|
2003-10-23 00:28:10 +02:00
|
|
|
%allfiles;
|
|
|
|
|
2000-11-24 18:44:22 +01:00
|
|
|
<!-- developer's guide -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY arch-dev SYSTEM "arch-dev.sgml">
|
|
|
|
<!ENTITY bki SYSTEM "bki.sgml">
|
|
|
|
<!ENTITY catalogs SYSTEM "catalogs.sgml">
|
2022-07-14 22:07:12 +02:00
|
|
|
<!ENTITY system-views SYSTEM "system-views.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY geqo SYSTEM "geqo.sgml">
|
2018-02-06 19:52:27 +01:00
|
|
|
<!ENTITY btree SYSTEM "btree.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY gist SYSTEM "gist.sgml">
|
2011-12-17 22:41:16 +01:00
|
|
|
<!ENTITY spgist SYSTEM "spgist.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY gin SYSTEM "gin.sgml">
|
BRIN: Block Range Indexes
BRIN is a new index access method intended to accelerate scans of very
large tables, without the maintenance overhead of btrees or other
traditional indexes. They work by maintaining "summary" data about
block ranges. Bitmap index scans work by reading each summary tuple and
comparing them with the query quals; all pages in the range are returned
in a lossy TID bitmap if the quals are consistent with the values in the
summary tuple, otherwise not. Normal index scans are not supported
because these indexes do not store TIDs.
As new tuples are added into the index, the summary information is
updated (if the block range in which the tuple is added is already
summarized) or not; in the latter case, a subsequent pass of VACUUM or
the brin_summarize_new_values() function will create the summary
information.
For data types with natural 1-D sort orders, the summary info consists
of the maximum and the minimum values of each indexed column within each
page range. This type of operator class we call "Minmax", and we
supply a bunch of them for most data types with B-tree opclasses.
Since the BRIN code is generalized, other approaches are possible for
things such as arrays, geometric types, ranges, etc; even for things
such as enum types we could do something different than minmax with
better results. In this commit I only include minmax.
Catalog version bumped due to new builtin catalog entries.
There's more that could be done here, but this is a good step forwards.
Loosely based on ideas from Simon Riggs; code mostly by Álvaro Herrera,
with contribution by Heikki Linnakangas.
Patch reviewed by: Amit Kapila, Heikki Linnakangas, Robert Haas.
Testing help from Jeff Janes, Erik Rijkers, Emanuel Calvo.
PS:
The research leading to these results has received funding from the
European Union's Seventh Framework Programme (FP7/2007-2013) under
grant agreement n° 318633.
2014-11-07 20:38:14 +01:00
|
|
|
<!ENTITY brin SYSTEM "brin.sgml">
|
2021-07-05 06:06:11 +02:00
|
|
|
<!ENTITY hash SYSTEM "hash.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY planstats SYSTEM "planstats.sgml">
|
2019-04-04 02:37:00 +02:00
|
|
|
<!ENTITY tableam SYSTEM "tableam.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY indexam SYSTEM "indexam.sgml">
|
|
|
|
<!ENTITY nls SYSTEM "nls.sgml">
|
|
|
|
<!ENTITY plhandler SYSTEM "plhandler.sgml">
|
|
|
|
<!ENTITY fdwhandler SYSTEM "fdwhandler.sgml">
|
2015-03-13 12:55:39 +01:00
|
|
|
<!ENTITY custom-scan SYSTEM "custom-scan.sgml">
|
2014-03-18 18:20:01 +01:00
|
|
|
<!ENTITY logicaldecoding SYSTEM "logicaldecoding.sgml">
|
Introduce replication progress tracking infrastructure.
When implementing a replication solution ontop of logical decoding, two
related problems exist:
* How to safely keep track of replication progress
* How to change replication behavior, based on the origin of a row;
e.g. to avoid loops in bi-directional replication setups
The solution to these problems, as implemented here, consist out of
three parts:
1) 'replication origins', which identify nodes in a replication setup.
2) 'replication progress tracking', which remembers, for each
replication origin, how far replay has progressed in a efficient and
crash safe manner.
3) The ability to filter out changes performed on the behest of a
replication origin during logical decoding; this allows complex
replication topologies. E.g. by filtering all replayed changes out.
Most of this could also be implemented in "userspace", e.g. by inserting
additional rows contain origin information, but that ends up being much
less efficient and more complicated. We don't want to require various
replication solutions to reimplement logic for this independently. The
infrastructure is intended to be generic enough to be reusable.
This infrastructure also replaces the 'nodeid' infrastructure of commit
timestamps. It is intended to provide all the former capabilities,
except that there's only 2^16 different origins; but now they integrate
with logical decoding. Additionally more functionality is accessible via
SQL. Since the commit timestamp infrastructure has also been introduced
in 9.5 (commit 73c986add) changing the API is not a problem.
For now the number of origins for which the replication progress can be
tracked simultaneously is determined by the max_replication_slots
GUC. That GUC is not a perfect match to configure this, but there
doesn't seem to be sufficient reason to introduce a separate new one.
Bumps both catversion and wal page magic.
Author: Andres Freund, with contributions from Petr Jelinek and Craig Ringer
Reviewed-By: Heikki Linnakangas, Petr Jelinek, Robert Haas, Steve Singer
Discussion: 20150216002155.GI15326@awork2.anarazel.de,
20140923182422.GA15776@alap3.anarazel.de,
20131114172632.GE7522@alap2.anarazel.de
2015-04-29 19:30:53 +02:00
|
|
|
<!ENTITY replication-origins SYSTEM "replication-origins.sgml">
|
2022-02-03 19:57:27 +01:00
|
|
|
<!ENTITY archive-modules SYSTEM "archive-modules.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY protocol SYSTEM "protocol.sgml">
|
|
|
|
<!ENTITY sources SYSTEM "sources.sgml">
|
|
|
|
<!ENTITY storage SYSTEM "storage.sgml">
|
2022-11-30 02:49:52 +01:00
|
|
|
<!ENTITY transaction SYSTEM "xact.sgml">
|
2015-05-15 21:40:52 +02:00
|
|
|
<!ENTITY tablesample-method SYSTEM "tablesample-method.sgml">
|
2016-04-01 11:21:48 +02:00
|
|
|
<!ENTITY generic-wal SYSTEM "generic-wal.sgml">
|
2022-04-07 07:26:43 +02:00
|
|
|
<!ENTITY custom-rmgr SYSTEM "custom-rmgr.sgml">
|
2020-04-14 19:41:32 +02:00
|
|
|
<!ENTITY backup-manifest SYSTEM "backup-manifest.sgml">
|
2003-10-23 00:28:10 +02:00
|
|
|
|
2007-11-11 00:30:46 +01:00
|
|
|
<!-- contrib information -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY contrib SYSTEM "contrib.sgml">
|
|
|
|
<!ENTITY adminpack SYSTEM "adminpack.sgml">
|
Add amcheck extension to contrib.
This is the beginning of a collection of SQL-callable functions to
verify the integrity of data files. For now it only contains code to
verify B-Tree indexes.
This adds two SQL-callable functions, validating B-Tree consistency to
a varying degree. Check the, extensive, docs for details.
The goal is to later extend the coverage of the module to further
access methods, possibly including the heap. Once checks for
additional access methods exist, we'll likely add some "dispatch"
functions that cover multiple access methods.
Author: Peter Geoghegan, editorialized by Andres Freund
Reviewed-By: Andres Freund, Tomas Vondra, Thomas Munro,
Anastasia Lubennikova, Robert Haas, Amit Langote
Discussion: CAM3SWZQzLMhMwmBqjzK+pRKXrNUZ4w90wYMUWfkeV8mZ3Debvw@mail.gmail.com
2017-03-10 00:50:40 +01:00
|
|
|
<!ENTITY amcheck SYSTEM "amcheck.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY auth-delay SYSTEM "auth-delay.sgml">
|
|
|
|
<!ENTITY auto-explain SYSTEM "auto-explain.sgml">
|
2023-01-26 01:13:39 +01:00
|
|
|
<!ENTITY basic-archive SYSTEM "basic-archive.sgml">
|
2022-03-15 18:24:23 +01:00
|
|
|
<!ENTITY basebackup-to-shell SYSTEM "basebackup-to-shell.sgml">
|
2016-04-01 15:42:24 +02:00
|
|
|
<!ENTITY bloom SYSTEM "bloom.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY btree-gin SYSTEM "btree-gin.sgml">
|
|
|
|
<!ENTITY btree-gist SYSTEM "btree-gist.sgml">
|
|
|
|
<!ENTITY citext SYSTEM "citext.sgml">
|
|
|
|
<!ENTITY cube SYSTEM "cube.sgml">
|
|
|
|
<!ENTITY dblink SYSTEM "dblink.sgml">
|
|
|
|
<!ENTITY dict-int SYSTEM "dict-int.sgml">
|
|
|
|
<!ENTITY dict-xsyn SYSTEM "dict-xsyn.sgml">
|
|
|
|
<!ENTITY dummy-seclabel SYSTEM "dummy-seclabel.sgml">
|
|
|
|
<!ENTITY earthdistance SYSTEM "earthdistance.sgml">
|
|
|
|
<!ENTITY file-fdw SYSTEM "file-fdw.sgml">
|
|
|
|
<!ENTITY fuzzystrmatch SYSTEM "fuzzystrmatch.sgml">
|
|
|
|
<!ENTITY hstore SYSTEM "hstore.sgml">
|
|
|
|
<!ENTITY intagg SYSTEM "intagg.sgml">
|
|
|
|
<!ENTITY intarray SYSTEM "intarray.sgml">
|
|
|
|
<!ENTITY isn SYSTEM "isn.sgml">
|
|
|
|
<!ENTITY lo SYSTEM "lo.sgml">
|
|
|
|
<!ENTITY ltree SYSTEM "ltree.sgml">
|
|
|
|
<!ENTITY oid2name SYSTEM "oid2name.sgml">
|
|
|
|
<!ENTITY pageinspect SYSTEM "pageinspect.sgml">
|
|
|
|
<!ENTITY passwordcheck SYSTEM "passwordcheck.sgml">
|
|
|
|
<!ENTITY pgbuffercache SYSTEM "pgbuffercache.sgml">
|
|
|
|
<!ENTITY pgcrypto SYSTEM "pgcrypto.sgml">
|
|
|
|
<!ENTITY pgfreespacemap SYSTEM "pgfreespacemap.sgml">
|
2013-12-20 14:08:01 +01:00
|
|
|
<!ENTITY pgprewarm SYSTEM "pgprewarm.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY pgrowlocks SYSTEM "pgrowlocks.sgml">
|
|
|
|
<!ENTITY pgstatstatements SYSTEM "pgstatstatements.sgml">
|
|
|
|
<!ENTITY pgstattuple SYSTEM "pgstattuple.sgml">
|
New contrib module, pg_surgery, with heap surgery functions.
Sometimes it happens that the visibility information for a tuple
becomes corrupted, either due to bugs in the database software or
external factors. Provide a function heap_force_kill() that can
be used to truncate such dead tuples to dead line pointers, and
a function heap_force_freeze() that can be used to overwrite the
visibility information in such a way that the tuple becomes
all-visible.
These functions are unsafe, in that you can easily use them to
corrupt a database that was not previously corrupted, and you can
use them to further corrupt an already-corrupted database or to
destroy data. The documentation accordingly cautions against
casual use. However, in some cases they permit recovery of data
that would otherwise be very difficult to recover, or to allow a
system to continue to function when it would otherwise be difficult
to do so.
Because we may want to add other functions for performing other
kinds of surgery in the future, the new contrib module is called
pg_surgery rather than something specific to these functions. I
proposed back-patching this so that it could be more easily used
by people running existing releases who are facing these kinds of
problems, but that proposal did not attract enough support, so
no back-patch for now.
Ashutosh Sharma, reviewed and tested by Andrey M. Borodin,
M. Beena Emerson, Masahiko Sawada, Rajkumar Raghuwanshi,
Asim Praveen, and Mark Dilger, and somewhat revised by me.
Discussion: http://postgr.es/m/CA+TgmoZW1fsU-QUNCRUQMGUygBDPVeOTLCqRdQZch=EYZnctSA@mail.gmail.com
2020-09-10 17:10:55 +02:00
|
|
|
<!ENTITY pgsurgery SYSTEM "pgsurgery.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY pgtrgm SYSTEM "pgtrgm.sgml">
|
2016-03-08 14:38:50 +01:00
|
|
|
<!ENTITY pgvisibility SYSTEM "pgvisibility.sgml">
|
2022-04-11 17:41:28 +02:00
|
|
|
<!ENTITY pgwalinspect SYSTEM "pgwalinspect.sgml">
|
2013-02-21 11:26:23 +01:00
|
|
|
<!ENTITY postgres-fdw SYSTEM "postgres-fdw.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY seg SYSTEM "seg.sgml">
|
|
|
|
<!ENTITY contrib-spi SYSTEM "contrib-spi.sgml">
|
|
|
|
<!ENTITY sepgsql SYSTEM "sepgsql.sgml">
|
|
|
|
<!ENTITY sslinfo SYSTEM "sslinfo.sgml">
|
|
|
|
<!ENTITY tablefunc SYSTEM "tablefunc.sgml">
|
2012-01-20 05:15:15 +01:00
|
|
|
<!ENTITY tcn SYSTEM "tcn.sgml">
|
Introduce logical decoding.
This feature, building on previous commits, allows the write-ahead log
stream to be decoded into a series of logical changes; that is,
inserts, updates, and deletes and the transactions which contain them.
It is capable of handling decoding even across changes to the schema
of the effected tables. The output format is controlled by a
so-called "output plugin"; an example is included. To make use of
this in a real replication system, the output plugin will need to be
modified to produce output in the format appropriate to that system,
and to perform filtering.
Currently, information can be extracted from the logical decoding
system only via SQL; future commits will add the ability to stream
changes via walsender.
Andres Freund, with review and other contributions from many other
people, including Álvaro Herrera, Abhijit Menon-Sen, Peter Gheogegan,
Kevin Grittner, Robert Haas, Heikki Linnakangas, Fujii Masao, Abhijit
Menon-Sen, Michael Paquier, Simon Riggs, Craig Ringer, and Steve
Singer.
2014-03-03 22:32:18 +01:00
|
|
|
<!ENTITY test-decoding SYSTEM "test-decoding.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY test-parser SYSTEM "test-parser.sgml">
|
2014-01-14 21:58:15 +01:00
|
|
|
<!ENTITY test-shm-mq SYSTEM "test-shm-mq.sgml">
|
2015-05-15 21:14:22 +02:00
|
|
|
<!ENTITY tsm-system-rows SYSTEM "tsm-system-rows.sgml">
|
2015-05-15 21:18:57 +02:00
|
|
|
<!ENTITY tsm-system-time SYSTEM "tsm-system-time.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY unaccent SYSTEM "unaccent.sgml">
|
|
|
|
<!ENTITY uuid-ossp SYSTEM "uuid-ossp.sgml">
|
|
|
|
<!ENTITY vacuumlo SYSTEM "vacuumlo.sgml">
|
|
|
|
<!ENTITY xml2 SYSTEM "xml2.sgml">
|
2007-11-11 00:30:46 +01:00
|
|
|
|
2003-10-23 00:28:10 +02:00
|
|
|
<!-- appendixes -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY datetime SYSTEM "datetime.sgml">
|
|
|
|
<!ENTITY docguide SYSTEM "docguide.sgml">
|
|
|
|
<!ENTITY errcodes SYSTEM "errcodes.sgml">
|
|
|
|
<!ENTITY features SYSTEM "features.sgml">
|
|
|
|
<!ENTITY keywords SYSTEM "keywords.sgml">
|
|
|
|
<!ENTITY sourcerepo SYSTEM "sourcerepo.sgml">
|
|
|
|
|
|
|
|
<!ENTITY release SYSTEM "release.sgml">
|
2023-06-30 01:05:23 +02:00
|
|
|
<!ENTITY release-17 SYSTEM "release-17.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
|
2018-11-29 13:58:28 +01:00
|
|
|
<!ENTITY limits SYSTEM "limits.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY acronyms SYSTEM "acronyms.sgml">
|
2020-04-03 18:23:20 +02:00
|
|
|
<!ENTITY glossary SYSTEM "glossary.sgml">
|
2020-03-29 11:13:27 +02:00
|
|
|
<!ENTITY color SYSTEM "color.sgml">
|
Allow using syncfs() in frontend utilities.
This commit allows specifying a --sync-method in several frontend
utilities that must synchronize many files to disk (initdb,
pg_basebackup, pg_checksums, pg_dump, pg_rewind, and pg_upgrade).
On Linux, users can specify "syncfs" to synchronize the relevant
file systems instead of calling fsync() for every single file. In
many cases, using syncfs() is much faster.
As with recovery_init_sync_method, this new option comes with some
caveats. The descriptions of these caveats have been moved to a
new appendix section in the documentation.
Co-authored-by: Justin Pryzby
Reviewed-by: Michael Paquier, Thomas Munro, Robert Haas, Justin Pryzby
Discussion: https://postgr.es/m/20210930004340.GM831%40telsasoft.com
2023-09-07 01:27:16 +02:00
|
|
|
<!ENTITY syncfs SYSTEM "syncfs.sgml">
|
2011-04-04 22:07:53 +02:00
|
|
|
|
|
|
|
<!ENTITY features-supported SYSTEM "features-supported.sgml">
|
|
|
|
<!ENTITY features-unsupported SYSTEM "features-unsupported.sgml">
|
|
|
|
|
|
|
|
<!ENTITY errcodes-table SYSTEM "errcodes-table.sgml">
|
2019-05-07 15:29:39 +02:00
|
|
|
<!ENTITY keywords-table SYSTEM "keywords-table.sgml">
|
2011-02-04 04:32:49 +01:00
|
|
|
|
2003-10-23 00:28:10 +02:00
|
|
|
<!-- back matter -->
|
2011-04-04 22:07:53 +02:00
|
|
|
<!ENTITY biblio SYSTEM "biblio.sgml">
|
2021-03-31 22:23:25 +02:00
|
|
|
|
|
|
|
<!-- Stubs for removed entries to preserve public links -->
|
|
|
|
<!ENTITY obsolete SYSTEM "appendix-obsolete.sgml">
|
|
|
|
<!ENTITY obsolete-recovery-config SYSTEM "appendix-obsolete-recovery-config.sgml">
|
2021-04-01 21:32:06 +02:00
|
|
|
<!ENTITY obsolete-default-roles SYSTEM "appendix-obsolete-default-roles.sgml">
|
2021-03-31 22:23:25 +02:00
|
|
|
<!ENTITY obsolete-pgxlogdump SYSTEM "appendix-obsolete-pgxlogdump.sgml">
|
|
|
|
<!ENTITY obsolete-pgresetxlog SYSTEM "appendix-obsolete-pgresetxlog.sgml">
|
|
|
|
<!ENTITY obsolete-pgreceivexlog SYSTEM "appendix-obsolete-pgreceivexlog.sgml">
|