Re: Any plans to expose publicly (via stored proc) relation_needs_vacanalyze, or some flavour of do_autovacuum? - Mailing list pgsql-general

From Tom Lane
Subject Re: Any plans to expose publicly (via stored proc) relation_needs_vacanalyze, or some flavour of do_autovacuum?
Date
Msg-id 23577.1284429711@sss.pgh.pa.us
Whole thread Raw
In response to Any plans to expose publicly (via stored proc) relation_needs_vacanalyze, or some flavour of do_autovacuum?  (Vlad Romascanu <vromascanu@accurev.com>)
List pgsql-general
Vlad Romascanu <vromascanu@accurev.com> writes:
> The logical, amended solution would then be to have the "writer"
> session perform, after INSERTion but before COMMITTing, the same
> calculation that the autovacuum daemon currently performs inside
> relation_needs_vacanalyze, based on the same configuration parameters
> that the autovacuum daemon uses, before deciding whether to explicitly
> ANALYZE or not the affected application tables.  Ideally one would not
> want to duplicate the relation_needs_vacanalyze logic (not to mention
> having to guess the value of last_anl_tuples, which is not exposed via
> any storedproc -- one would have to assume that it is more or less
> equivalent to pg_class.reltuples.)

I don't know if you actually looked at that code, but it's driven off of
statistics counters that are only updated at commit; and furthermore are
maintained in a different process altogether.  So what you have in mind
isn't going to work ...

            regards, tom lane

pgsql-general by date:

Previous
From: Craig Ringer
Date:
Subject: Re: Post Install / Secure PostgreSQL
Next
From: 夏武
Date:
Subject: Re: Help! pg_dump: Error message from server: ERROR: cache lookup failed for type 19