On Apr 30, 2015, at 8:00 AM, Matt Patey <matt.patey@xxxxxxxxxxx> wrote: > > We have a streaming replication setup, where the replication slave runs pg_dump every hour. Our lag monitor shows an expected sawtooth shape, where pg_dump runs coincide with a climbing lag, which ends abruptly when pg_dump is finished. This is, to the best of my knowledge, expected behaviour. The lag pattern occasionally disappears though, and when looking at system processes we see that the database is recovering WAL data, and pg_dump is also running. How is this even possible? Any query (and pg_dump is a series of queries) does not necessarily block recovery. AFAIK, it’s only when the query requires a version of a row which would be removed by WAL replay that the recovery gets blocked. So it’s possible for pg_dump to not block recovery, but in any reasonably active db I think it’s unlikely—exactly what you’re seeing. -- Scott Ribe scott_ribe@xxxxxxxxxxxxxxxx http://www.elevated-dev.com/ https://www.linkedin.com/in/scottribe/ (303) 722-0567 voice -- Sent via pgsql-admin mailing list (pgsql-admin@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-admin