Re: pg_stop_backup(wait_for_archive := true) on standby server
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: David Steele <david@pgmasters.net>
Cc: Masahiko Sawada <sawada.mshk@gmail.com>,
Stephen Frost <sfrost@snowman.net>, Michael Paquier <michael.paquier@gmail.com>, Peter Eisentraut <peter.eisentraut@2ndquadrant.com>,
Magnus Hagander <magnus@hagander.net>, Noah Misch <noah@leadboat.com>,
PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2017-07-24T16:28:06Z
Lists: pgsql-hackers
On Mon, Jul 24, 2017 at 11:40 AM, David Steele <david@pgmasters.net> wrote: > Before reviewing the patch, I would note that it looks like this issue was > introduced in b6a323a8c before the 9.6 release. The documentation states > that the pg_stop_backup() function will wait for all required WAL to be > archived, which corresponds to the default in the new patch of > waitforarchive = true. The commit notes that the documentation needs > updating, but since that didn't happen I think we should consider this a bug > in 9.6 and back patch. > > While this patch brings pg_stop_backup() in line with the documentation, it > also introduces a behavioral change compared to 9.6. Currently, the default > 9.6 behavior on a standby is to return immediately from pg_stop_backup(), > but this patch will cause it to block by default instead. Since action on > the master may be required to unblock the process, I see this as a pretty > significant change. I still think we should fix and backpatch, but I wanted > to point this out. Hmm. That seems to me like it could break backup scripts that are currently working, which seems like a *very* unfriendly thing to do in a minor release, especially since 9.6 has no option to override the default behavior (nor can we add one, since it would require a change to catalog contents). -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Make pg_stop_backup's wait_for_archive flag work on standbys.
- 52f8a59dd953 10.0 landed
-
Implement backup API functions for non-exclusive backups
- 7117685461af 9.6.0 cited