Bruce Momjian wrote:
> Remember, delaying wal application just delays making the standby a
> master and makes the slave data appear staler. We can just tell people
> that the larger their queries are, the larger this delay will be. If
> they want to control this, they can set 'statement_timeout' already.
>
While a useful defensive component, statement_timeout is a user setting,
so it can't provide guaranteed protection against a WAL application
denial of service from a long running query. A user that overrides the
system setting and kicks off a long query puts you right back into
needing a timeout to ensure forward progress of standby replay.
--
Greg Smith 2ndQuadrant US Baltimore, MD
PostgreSQL Training, Services and Support
greg@2ndQuadrant.com www.2ndQuadrant.us