autovacuum multiworkers, patch 8 - Mailing list pgsql-patches

From Alvaro Herrera
Subject autovacuum multiworkers, patch 8
Date
Msg-id 20070412203306.GO15947@alvh.no-ip.org
Whole thread Raw
In response to Re: autovacuum multiworkers, patch 5  (ITAGAKI Takahiro <itagaki.takahiro@oss.ntt.co.jp>)
List pgsql-patches
Ok, here is a version which works on EXEC_BACKEND too.

The main change in this patch is that the PGPROC list has been moved
into ProcGlobal, as discussed.  They are still separate from the main
PGPROCs, but they are protected by the same spinlock and thus a bit of
code dealing with that goes away.  Also, there is no longer a separate
ProcKill, and the changes to InitProcess are less intrusive.  The code
dealing with clearing the WorkerInfo has been moved into its own
on_shmem_exit hook.

Also, a new signal is sent to the postmaster when the worker which is
supposed to be starting has not started.  This should not make much of a
difference in general, since the postmaster is not supposed to lose
signals, but it gives an extra guarantee that things are not going to
linger too long.  The request to start is removed when
autovacuum_naptime seconds have elapsed anyway.

Oh, I also changed the default autovacuum_max_workers from 10 to 3.

Some other minor infelicites have been corrected, like resetting the
av_rebalance flag when the rebalancing takes place (doh); some comments
have been expanded a bit.

--
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

Attachment

pgsql-patches by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: RESET SESSION v3
Next
From: Koichi Suzuki
Date:
Subject: Re: [HACKERS] Full page writes improvement, code update