1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-29 16:21:20 +03:00

Back-patch checkpoint clarification docs and pg_basebackup updates

This backpatches 51e26c9 and 7220c7b, including both documentation
updates clarifying the checkpoints at the beginning of base backups and
the messages in verbose and progress mdoe of pg_basebackup.

Author: Michael Banck
Discussion: https://postgr.es/m/21444.1488142764%40sss.pgh.pa.us
This commit is contained in:
Magnus Hagander 2017-04-01 17:20:05 +02:00
parent cb366b5079
commit bd34e7f19b
2 changed files with 20 additions and 1 deletions

View File

@ -361,7 +361,7 @@ PostgreSQL documentation
<term><option>--checkpoint=<replaceable class="parameter">fast|spread</replaceable></option></term> <term><option>--checkpoint=<replaceable class="parameter">fast|spread</replaceable></option></term>
<listitem> <listitem>
<para> <para>
Sets checkpoint mode to fast or spread (default) (see <xref linkend="backup-lowlevel-base-backup">). Sets checkpoint mode to fast (immediate) or spread (default) (see <xref linkend="backup-lowlevel-base-backup">).
</para> </para>
</listitem> </listitem>
</varlistentry> </varlistentry>
@ -568,6 +568,14 @@ PostgreSQL documentation
<refsect1> <refsect1>
<title>Notes</title> <title>Notes</title>
<para>
At the beginning of the backup, a checkpoint needs to be written on the
server the backup is taken from. Especially if the option
<literal>--checkpoint=fast</literal> is not used, this can take some time
during which <application>pg_basebackup</application> will be appear
to be idle.
</para>
<para> <para>
The backup will include all files in the data directory and tablespaces, The backup will include all files in the data directory and tablespaces,
including the configuration files and any additional files placed in the including the configuration files and any additional files placed in the

View File

@ -1655,6 +1655,14 @@ BaseBackup(void)
if (maxrate > 0) if (maxrate > 0)
maxrate_clause = psprintf("MAX_RATE %u", maxrate); maxrate_clause = psprintf("MAX_RATE %u", maxrate);
if (verbose)
fprintf(stderr,
_("%s: initiating base backup, waiting for checkpoint to complete\n"),
progname);
if (showprogress && !verbose)
fprintf(stderr, "waiting for checkpoint\r");
basebkp = basebkp =
psprintf("BASE_BACKUP LABEL '%s' %s %s %s %s %s", psprintf("BASE_BACKUP LABEL '%s' %s %s %s %s %s",
escaped_label, escaped_label,
@ -1691,6 +1699,9 @@ BaseBackup(void)
strlcpy(xlogstart, PQgetvalue(res, 0, 0), sizeof(xlogstart)); strlcpy(xlogstart, PQgetvalue(res, 0, 0), sizeof(xlogstart));
if (verbose)
fprintf(stderr, _("%s: checkpoint completed\n"), progname);
/* /*
* 9.3 and later sends the TLI of the starting point. With older servers, * 9.3 and later sends the TLI of the starting point. With older servers,
* assume it's the same as the latest timeline reported by * assume it's the same as the latest timeline reported by