Re: Incomplete description of pg_start_backup?

From: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
To: dmitry(at)koterov(dot)ru
Cc: "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Incomplete description of pg_start_backup?
Date: 2013-04-30 23:35:54
Message-ID: CAMkU=1wpAzLGPfHQkk5FgmK=_0Jbjcik7yj11h+GeE5mau1efA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Apr 30, 2013 at 3:24 PM, Dmitry Koterov <dmitry(at)koterov(dot)ru> wrote:

> I think that at
> http://www.postgresql.org/docs/current/static/functions-admin.html and
> http://www.postgresql.org/docs/current/static/continuous-archiving.html two
> important points on how pg_start_backup() works are missing:
>
> 1. After pg_start_backup() and till pg_stop_backup() VACUUM is denied
> (e.g. autovacuum is turned off), so the new data is always appended to data
> files, is never written at their middle.
>

This is not the case. Autovacuum continues to run during the backup.

> This allows to archive the data directory using any copying tools (rsync,
> tar, cp etc.). If you forget to call pg_stop_backup() by accident, data
> files will grow forever. So pg_start_backup() switches the database to
> "append-only mode" which is safe to backup without stopping (data files
> temporarily become append-only, WAL logs are append-only always).
>

No, it doesn't work that way. I don't know why appending would be any
safer than normal updates would be anyway. WAL replay fixes up any
problems that might arise.

> 2. After pg_start_backup() and till pg_stop_backup() full_page_writes is
> forced to be ON.
>

Effectively yes, this is documented in one of your links above (and is one
of the reasons vacuuming during the backup is not a problem)

Cheers,

Jeff

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2013-04-30 23:52:23 Re: Substituting Checksum Algorithm (was: Enabling Checksums)
Previous Message Noah Misch 2013-04-30 23:12:04 Re: Substituting Checksum Algorithm (was: Enabling Checksums)