Обсуждение: docu bug?

Поиск
Список
Период
Сортировка

docu bug?

От
PG Doc comments form
Дата:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/9.6/static/continuous-archiving.html
Description:

Seems to need a persistent connection:

<quote>
25.3.3.1. Making a non-exclusive low level backup
...
The connection calling pg_start_backup must be maintained until the end of
the backup, or the backup will be automatically aborted.
...
</Quote>


The sample works with a NON-persistent connection (psql -c):

<quote>
25.3.6.1. Standalone Hot Backups
...      touch /var/lib/pgsql/backup_in_progress
psql -c "select pg_start_backup('hot_backup');"
tar -cf /var/lib/pgsql/backup.tar /var/lib/pgsql/data/
psql -c "select pg_stop_backup();"
rm /var/lib/pgsql/backup_in_progress
tar -rf /var/lib/pgsql/backup.tar /var/lib/pgsql/archive/
...
</quote>

Re: docu bug?

От
Salvador Jacinto
Дата:
POR FAVOR TRADUZIR 

Em 19/02/2018 9:55 AM, "PG Doc comments form" <noreply@postgresql.org> escreveu:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/9.6/static/continuous-archiving.html
Description:

Seems to need a persistent connection:

<quote>
25.3.3.1. Making a non-exclusive low level backup
...
The connection calling pg_start_backup must be maintained until the end of
the backup, or the backup will be automatically aborted.
...
</Quote>


The sample works with a NON-persistent connection (psql -c):

<quote>
25.3.6.1. Standalone Hot Backups
...      touch /var/lib/pgsql/backup_in_progress
psql -c "select pg_start_backup('hot_backup');"
tar -cf /var/lib/pgsql/backup.tar /var/lib/pgsql/data/
psql -c "select pg_stop_backup();"
rm /var/lib/pgsql/backup_in_progress
tar -rf /var/lib/pgsql/backup.tar /var/lib/pgsql/archive/
...
</quote>

Re: docu bug?

От
Michael Paquier
Дата:
On Mon, Feb 19, 2018 at 01:54:24PM +0000, PG Doc comments form wrote:
> The sample works with a NON-persistent connection (psql -c):
>
> <quote>
> 25.3.6.1. Standalone Hot Backups
> ...      touch /var/lib/pgsql/backup_in_progress
> psql -c "select pg_start_backup('hot_backup');"
> tar -cf /var/lib/pgsql/backup.tar /var/lib/pgsql/data/
> psql -c "select pg_stop_backup();"
> rm /var/lib/pgsql/backup_in_progress
> tar -rf /var/lib/pgsql/backup.tar /var/lib/pgsql/archive/
> ...
> </quote>

This uses the set of exclusive backup APIs, so with non-persistent
connections the backup can be correctly completed.  Non-exclusive
backups can be defined using 'false' as third argument of
pg_start_backup() and first argument of pg_stop_backup().  Note that for
pg_start_backup you would also need to define the second boolean
argument to decide if a checkpoint should be immediately taken or not.
So you would have basically the following flow on a persistem
connection:
=# SELECT pg_start_backup('my_backup', true_or_false, false);
-- keep connection alive and do stuff.
=# SELECT pg_stop_backup(false);

Do you think that the section "Tips and Examples" should mention
that an exclusive backup method is used for this example?  This may
reduce the confusion.
--
Michael

Вложения

AW: docu bug?

От
"Zwettler Markus (OIZ)"
Дата:
Yes. I think the exclusive backup method should be mentioned especially as it is the older one.

- Markus



-----Ursprüngliche Nachricht-----
Von: Michael Paquier [mailto:michael@paquier.xyz]
Gesendet: Dienstag, 20. Februar 2018 02:25
An: Zwettler Markus (OIZ) <Markus.Zwettler@zuerich.ch>; pgsql-docs@lists.postgresql.org
Betreff: Re: docu bug?

On Mon, Feb 19, 2018 at 01:54:24PM +0000, PG Doc comments form wrote:
> The sample works with a NON-persistent connection (psql -c):
>
> <quote>
> 25.3.6.1. Standalone Hot Backups
> ...      touch /var/lib/pgsql/backup_in_progress
> psql -c "select pg_start_backup('hot_backup');"
> tar -cf /var/lib/pgsql/backup.tar /var/lib/pgsql/data/ psql -c "select
> pg_stop_backup();"
> rm /var/lib/pgsql/backup_in_progress
> tar -rf /var/lib/pgsql/backup.tar /var/lib/pgsql/archive/ ...
> </quote>

This uses the set of exclusive backup APIs, so with non-persistent connections the backup can be correctly completed.
Non-exclusivebackups can be defined using 'false' as third argument of 
pg_start_backup() and first argument of pg_stop_backup().  Note that for pg_start_backup you would also need to define
thesecond boolean argument to decide if a checkpoint should be immediately taken or not. 
So you would have basically the following flow on a persistem
connection:
=# SELECT pg_start_backup('my_backup', true_or_false, false);
-- keep connection alive and do stuff.
=# SELECT pg_stop_backup(false);

Do you think that the section "Tips and Examples" should mention that an exclusive backup method is used for this
example? This may reduce the confusion. 
--
Michael


Re: docu bug?

От
Michael Paquier
Дата:
On Tue, Feb 20, 2018 at 08:00:35AM +0000, Zwettler Markus (OIZ) wrote:
> Yes. I think the exclusive backup method should be mentioned
> especially as it is the older one.

Attached is a suggestion of patch.  What do you think?
--
Michael

Вложения