pgsql: Prevent autovacuum transactions from running in serializable mod
Prevent autovacuum transactions from running in serializable mode.
Force the transaction isolation level to READ COMMITTED in autovacuum
worker and launcher processes. There is no benefit to using a higher
isolation level, and doing so could result in delaying foreground
transactions (or maybe even causing unnecessary serialization failures?).
Noted by Dan Ports.
Also, make sure we disable zero_damaged_pages and statement_timeout in
the autovac launcher, not only workers. Now that the launcher can run
transactions, these settings could affect its behavior, and it seems
like the same arguments apply to the launcher as the workers.
Branch
------
master
Details
-------
http://git.postgresql.org/pg/commitdiff/73d1bfd0b567ef9a4439be1510c12c346a064d9e
Modified Files
--------------
src/backend/postmaster/autovacuum.c | 32 +++++++++++++++++++++++++++++++-
1 files changed, 31 insertions(+), 1 deletions(-)
On 11/29/2011 10:40 PM, Tom Lane wrote:
Prevent autovacuum transactions from running in serializable mode.
Force the transaction isolation level to READ COMMITTED in autovacuum
worker and launcher processes. There is no benefit to using a higher
isolation level, and doing so could result in delaying foreground
transactions (or maybe even causing unnecessary serialization failures?).
Noted by Dan Ports.Also, make sure we disable zero_damaged_pages and statement_timeout in
the autovac launcher, not only workers. Now that the launcher can run
transactions, these settings could affect its behavior, and it seems
like the same arguments apply to the launcher as the workers.
Looks like this broke the buildfarm.
cheers
andrew
On 11/29/2011 11:03 PM, Andrew Dunstan wrote:
Looks like this broke the buildfarm.
Actually, it was the pg_dump cleanup.
I clicked the wrong message.
cheers
andrew
Andrew Dunstan <andrew.dunstan@pgexperts.com> writes:
On 11/29/2011 11:03 PM, Andrew Dunstan wrote:
Looks like this broke the buildfarm.
Actually, it was the pg_dump cleanup.
Huh, my compiler didn't complain. Will fix, thanks!
regards, tom lane