postgresql/doc/src/sgml/ref
Michael Paquier a7e8ece41c Add -c/--restore-target-wal to pg_rewind
pg_rewind needs to copy from the source cluster to the target cluster a
set of relation blocks changed from the previous checkpoint where WAL
forked up to the end of WAL on the target.  Building this list of
relation blocks requires a range of WAL segments that may not be present
anymore on the target's pg_wal, causing pg_rewind to fail.  It is
possible to work around this issue by copying manually the WAL segments
needed but this may lead to some extra and actually useless work.

This commit introduces a new option allowing pg_rewind to use a
restore_command while doing the rewind by grabbing the parameter value
of restore_command from the target cluster configuration.  This allows
the rewind operation to be more reliable, so as only the WAL segments
needed by the rewind are restored from the archives.

In order to be able to do that, a new routine is added to src/common/ to
allow frontend tools to restore files from archives using an
already-built restore command.  This version is more simple than the
backend equivalent as there is no need to handle the non-recovery case.

Author: Alexey Kondratov
Reviewed-by: Andrey Borodin, Andres Freund, Alvaro Herrera, Alexander
Korotkov, Michael Paquier
Discussion: https://postgr.es/m/a3acff50-5a0d-9a2c-b3b2-ee36168955c1@postgrespro.ru
2020-04-01 10:57:03 +09:00
..
abort.sgml Transaction chaining 2019-03-24 11:33:02 +01:00
allfiles.sgml Rename pg_verify_checksums to pg_checksums 2019-03-13 10:43:20 +09:00
alter_aggregate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_collation.sgml Use libc version as a collation version on glibc systems. 2019-10-16 17:28:24 +13:00
alter_conversion.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_database.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_default_privileges.sgml Doc: clarify behavior of ALTER DEFAULT PRIVILEGES ... IN SCHEMA. 2019-11-19 14:21:41 -05:00
alter_domain.sgml Doc: document that we expect CHECK constraint conditions to be immutable. 2018-12-07 16:40:58 -05:00
alter_event_trigger.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_extension.sgml SQL procedures 2017-11-30 11:03:20 -05:00
alter_foreign_data_wrapper.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_foreign_table.sgml Fix and improve several places in the docs 2019-07-13 14:43:29 +09:00
alter_function.sgml Create the infrastructure for planner support functions. 2019-02-09 18:08:48 -05:00
alter_group.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_index.sgml Lower lock level for renaming indexes 2018-11-14 17:09:54 +01:00
alter_language.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_large_object.sgml Doc: improve documentation about ALTER LARGE OBJECT requirements. 2018-12-11 11:21:36 -05:00
alter_materialized_view.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_opclass.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_operator.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_opfamily.sgml Add equalimage B-Tree support functions. 2020-02-26 11:28:25 -08:00
alter_policy.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_procedure.sgml SQL procedures 2017-11-30 11:03:20 -05:00
alter_publication.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_role.sgml Clarify documentation about PASSWORD in CREATE/ALTER ROLE 2018-11-23 09:10:24 +09:00
alter_routine.sgml SQL procedures 2017-11-30 11:03:20 -05:00
alter_rule.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_schema.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_sequence.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_server.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_statistics.sgml Allow setting statistics target for extended statistics 2019-09-11 00:25:51 +02:00
alter_subscription.sgml ALTER SUBSCRIPTION / REFRESH docs: explain copy_data 2020-02-05 15:05:14 -03:00
alter_system.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_table.sgml doc: Spell checking 2020-02-10 08:34:43 +05:30
alter_tablespace.sgml Introduce a maintenance_io_concurrency setting. 2020-03-16 17:14:26 +13:00
alter_trigger.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_tsconfig.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_tsdictionary.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_tsparser.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_tstemplate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_type.sgml Allow ALTER TYPE to change some properties of a base type. 2020-03-06 12:19:29 -05:00
alter_user_mapping.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
alter_user.sgml Clarify documentation about PASSWORD in CREATE/ALTER ROLE 2018-11-23 09:10:24 +09:00
alter_view.sgml Update the description of type of check_option reloption in docs. 2020-03-18 18:28:22 +09:00
analyze.sgml Doc: document permissions required for ANALYZE. 2019-08-07 18:09:28 -04:00
begin.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
call.sgml Fix bugs in plpgsql's handling of CALL argument lists. 2018-11-04 13:25:39 -05:00
checkpoint.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
close.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
cluster.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
clusterdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
comment.sgml SQL procedures 2017-11-30 11:03:20 -05:00
commit_prepared.sgml doc: Remove unused title ids 2020-03-13 15:45:37 +01:00
commit.sgml Fix behavior of AND CHAIN outside of explicit transaction blocks 2019-09-08 16:23:03 +02:00
copy.sgml docs: clarify handling of column lists in COPY TO/FROM 2019-12-21 12:44:38 -05:00
create_access_method.sgml tableam: basic documentation. 2019-04-03 17:40:29 -07:00
create_aggregate.sgml Fix inconsistencies and typos in the tree 2019-07-29 12:28:30 +09:00
create_cast.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_collation.sgml Collations with nondeterministic comparison 2019-03-22 12:12:43 +01:00
create_conversion.sgml Remove dead encoding-conversion functions. 2019-07-05 14:17:27 -04:00
create_database.sgml Remove the word "virgins" for documentation 2019-11-14 17:33:26 -03:00
create_domain.sgml Doc: document that we expect CHECK constraint conditions to be immutable. 2018-12-07 16:40:58 -05:00
create_event_trigger.sgml Change PROCEDURE to FUNCTION in CREATE TRIGGER syntax 2018-08-22 14:44:49 +02:00
create_extension.sgml Remove support for upgrading extensions from "unpackaged" state. 2020-02-19 16:59:14 -05:00
create_foreign_data_wrapper.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_foreign_table.sgml doc: Remove unused title ids 2020-03-13 15:45:37 +01:00
create_function.sgml Create the infrastructure for planner support functions. 2019-02-09 18:08:48 -05:00
create_group.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_index.sgml Implement operator class parameters 2020-03-30 19:17:23 +03:00
create_language.sgml Remove the "opaque" pseudo-type and associated compatibility hacks. 2020-03-05 15:48:56 -05:00
create_materialized_view.sgml tableam: basic documentation. 2019-04-03 17:40:29 -07:00
create_opclass.sgml Add equalimage B-Tree support functions. 2020-02-26 11:28:25 -08:00
create_operator.sgml Change PROCEDURE to FUNCTION in CREATE OPERATOR syntax 2018-08-22 14:44:49 +02:00
create_opfamily.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_policy.sgml doc: Whitespace fixes in man pages 2018-05-21 14:43:24 -04:00
create_procedure.sgml Prohibit transaction commands in security definer procedures 2018-07-13 10:41:32 +02:00
create_publication.sgml Support adding partitioned tables to publication 2020-03-10 09:09:32 +01:00
create_role.sgml Clarify documentation about PASSWORD in CREATE/ALTER ROLE 2018-11-23 09:10:24 +09:00
create_rule.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_schema.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_sequence.sgml doc: Use proper em and en dashes 2019-10-25 20:39:41 +02:00
create_server.sgml docs: fix spacing around "if not exists" brackets 2018-03-29 21:25:39 -04:00
create_statistics.sgml docs: adjust multi-column most-common-value statistics 2019-09-30 13:44:22 -04:00
create_subscription.sgml Remove extra word from create sub docs 2018-11-03 12:21:54 -04:00
create_table_as.sgml Fix typo in commit 578b229718. 2019-09-19 14:40:09 +05:30
create_table.sgml Fix INSERT OVERRIDING USER VALUE behavior 2020-03-31 08:50:39 +02:00
create_tablespace.sgml Introduce a maintenance_io_concurrency setting. 2020-03-16 17:14:26 +13:00
create_transform.sgml Adjust hints and docs to suggest CREATE EXTENSION not CREATE LANGUAGE. 2018-04-27 13:42:03 -04:00
create_trigger.sgml Enable BEFORE row-level triggers for partitioned tables 2020-03-18 18:58:05 -03:00
create_tsconfig.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_tsdictionary.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_tsparser.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_tstemplate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
create_type.sgml Remove the "opaque" pseudo-type and associated compatibility hacks. 2020-03-05 15:48:56 -05:00
create_user_mapping.sgml docs: fix spacing around "if not exists" brackets 2018-03-29 21:25:39 -04:00
create_user.sgml Clarify documentation about PASSWORD in CREATE/ALTER ROLE 2018-11-23 09:10:24 +09:00
create_view.sgml Update the description of type of check_option reloption in docs. 2020-03-18 18:28:22 +09:00
createdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
createuser.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
deallocate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
declare.sgml doc: adjust DECLARE docs to mention FOR UPDATE behavior 2018-05-28 13:16:02 -04:00
delete.sgml doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM 2020-03-31 16:31:44 -04:00
discard.sgml Fix order of steps in DISCARD ALL documentation 2019-06-11 12:22:11 -04:00
do.sgml doc: Remove unused title ids 2020-03-13 15:45:37 +01:00
drop_access_method.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_aggregate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_cast.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_collation.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_conversion.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_database.sgml Introduce the 'force' option for the Drop Database command. 2019-11-13 08:25:33 +05:30
drop_domain.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_event_trigger.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_extension.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_foreign_data_wrapper.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_foreign_table.sgml Fix typo 2020-01-24 12:18:07 +01:00
drop_function.sgml SQL procedures 2017-11-30 11:03:20 -05:00
drop_group.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_index.sgml Fix concurrent indexing operations with temporary tables 2020-01-22 09:49:18 +09:00
drop_language.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_materialized_view.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_opclass.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_operator.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_opfamily.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_owned.sgml Doc: clarify that REASSIGN OWNED doesn't handle default privileges. 2019-03-25 17:18:05 -04:00
drop_policy.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_procedure.sgml SQL procedures 2017-11-30 11:03:20 -05:00
drop_publication.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_role.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_routine.sgml SQL procedures 2017-11-30 11:03:20 -05:00
drop_rule.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_schema.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_sequence.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_server.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_statistics.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_subscription.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_table.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_tablespace.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_transform.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_trigger.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_tsconfig.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_tsdictionary.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_tsparser.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_tstemplate.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_type.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_user_mapping.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_user.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
drop_view.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
dropdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
dropuser.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
ecpg-ref.sgml Fix our getopt_long's behavior for a command line argument of just "-". 2020-03-23 11:58:00 -04:00
end.sgml Transaction chaining 2019-03-24 11:33:02 +01:00
execute.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
explain.sgml Add SETTINGS option to EXPLAIN, to print modified settings. 2019-04-04 00:04:31 +02:00
fetch.sgml Doc: minor improvement in pl/pgsql FETCH/MOVE documentation. 2018-07-12 12:29:03 -04:00
grant.sgml Doc: fix old oversights in GRANT/REVOKE documentation. 2020-02-12 14:13:13 -05:00
import_foreign_schema.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
initdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
insert.sgml Fix INSERT OVERRIDING USER VALUE behavior 2020-03-31 08:50:39 +02:00
listen.sgml Doc: improve discussion of race conditions involved in LISTEN. 2019-11-24 18:03:39 -05:00
load.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
lock.sgml Add more infinite recursion detection while locking a view. 2018-04-17 16:59:17 +09:00
move.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
notify.sgml Use a hash table to de-duplicate NOTIFY events faster. 2019-08-15 12:22:12 -04:00
pg_basebackup.sgml Report NULL as total backup size if it's not estimated. 2020-03-24 10:43:41 +09:00
pg_checksums.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_config-ref.sgml Don't use SGML empty tags 2017-10-17 15:10:33 -04:00
pg_controldata.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_ctl-ref.sgml Implement "pg_ctl logrotate" command 2018-09-01 19:46:49 +03:00
pg_dump.sgml pg_dump: Allow dumping data of specific foreign servers 2020-03-25 13:19:31 -03:00
pg_dumpall.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_isready.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_receivewal.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_recvlogical.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_resetwal.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_restore.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pg_rewind.sgml Add -c/--restore-target-wal to pg_rewind 2020-04-01 10:57:03 +09:00
pg_waldump.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pgarchivecleanup.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pgbench.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pgtestfsync.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
pgtesttiming.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
pgupgrade.sgml Implement type regcollation 2020-03-18 21:21:00 +01:00
postgres-ref.sgml doc: Clean up title case use 2019-09-08 10:27:29 +02:00
postmaster.sgml doc: Remove unused ids 2020-03-07 14:04:09 +01:00
prepare_transaction.sgml doc: Remove unused title ids 2020-03-13 15:45:37 +01:00
prepare.sgml Doc: Fix various inconsistencies 2019-10-16 13:09:52 +09:00
psql-ref.sgml Fix assorted typos 2020-03-31 16:00:06 +02:00
reassign_owned.sgml Doc: clarify that REASSIGN OWNED doesn't handle default privileges. 2019-03-25 17:18:05 -04:00
refresh_materialized_view.sgml docs: fix wording of REFRESH CONCURRENTLY manual page 2019-10-23 20:29:02 -04:00
reindex.sgml Fix concurrent indexing operations with temporary tables 2020-01-22 09:49:18 +09:00
reindexdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
release_savepoint.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
reset.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
revoke.sgml Doc: fix old oversights in GRANT/REVOKE documentation. 2020-02-12 14:13:13 -05:00
rollback_prepared.sgml doc: Remove unused title ids 2020-03-13 15:45:37 +01:00
rollback_to.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
rollback.sgml Fix behavior of AND CHAIN outside of explicit transaction blocks 2019-09-08 16:23:03 +02:00
savepoint.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
security_label.sgml doc: Fix naming of SELinux 2020-01-10 09:36:55 +09:00
select_into.sgml table: docs: fix typos and grammar. 2019-04-05 09:47:10 -07:00
select.sgml Doc: clarify use of RECURSIVE in WITH. 2019-11-19 14:43:37 -05:00
set_constraints.sgml Convert SGML IDs to lower case 2017-10-20 19:26:10 -04:00
set_role.sgml Doc: Fix various inconsistencies 2019-10-16 13:09:52 +09:00
set_session_auth.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
set_transaction.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
set.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
show.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
start_transaction.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
truncate.sgml Fix TRUNCATE .. CASCADE on partitions 2020-02-07 17:09:36 -03:00
unlisten.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00
update.sgml doc: adjust UPDATE/DELETE's FROM/USING to match SELECT's FROM 2020-03-31 16:31:44 -04:00
vacuum.sgml Allow vacuum command to process indexes in parallel. 2020-01-20 07:57:49 +05:30
vacuumdb.sgml Doc: fix some description of environment variables with frontend tools 2020-03-09 10:53:22 +09:00
values.sgml Convert documentation to DocBook XML 2017-11-23 09:44:28 -05:00