Perhaps we could make the fixed-size buffer be of size X, and trigger
autovac on X/3 or some such, to give it enough slack so that it would be
very unlikely to be processed by user processes.
Do you mean that GIN sends a "smoke signal" to the autovacuum launcher process to ask about vacuum?
Currently, autovac only uses pgstats as trigger for actions.  Maybe we
could use something else (say, a flag in shared memory?), or just stash
the info that the index needs to be processed in pgstats and have
autovac examine it.

Flag in pgstats or shared memory is most reasonable solution. Using size of buffers is not very good because other indexes might use another technics for delayed insert and use another trigger criteria.

Suppose, the best technic for GIN will be a setting flag by search procedure - if time of scanning pending pages is eqial to time of search in regular structure then it's time to call insert cleanup.

Teodor Sigaev                                   E-mail: [EMAIL PROTECTED]

Sent via pgsql-patches mailing list (
To make changes to your subscription:

Reply via email to