Re: Auto ANALYZE criteria

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I was looking at the autovacuum documentation:
http://www.postgresql.org/docs/9.0/interactive/routine-vacuuming.html#AUTOVACUUM

   For analyze, a similar condition is used: the threshold, defined as:
   analyze threshold = analyze base threshold + analyze scale factor *
number of tuples
   is compared to the total number of tuples inserted or updated since
the last ANALYZE.

I guess that should be updated to read "insert, updated or deleted".


On Mon, Sep 20, 2010 at 10:12 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
> Joe Miller <joe.d.miller@xxxxxxxxx> writes:
>> The autovacuum daemon currently uses the number of inserted and
>> updated tuples to determine if it should run VACUUM ANALYZE on a
>> table.  Why doesn’t it consider deleted tuples as well?
>
> I think you misread the code.
>
> Now there *is* a problem, pre-9.0, if your update pattern is such that
> most or all updates are HOT updates.  To quote from the 9.0 alpha
> release notes:
>
>         Revise pgstat's tracking of tuple changes to
>         improve the reliability of decisions about when to
>         auto-analyze.  The previous code depended on n_live_tuples +
>         n_dead_tuples - last_anl_tuples, where all three of these
>         numbers could be bad estimates from ANALYZE itself.  Even
>         worse, in the presence of a steady flow of HOT updates and
>         matching HOT-tuple reclamations, auto-analyze might never
>         trigger at all, even if all three numbers are exactly right,
>         because n_dead_tuples could hold steady.
>
> It's not clear to me if that matches your problem, though.
>
>                        regards, tom lane
>

-- 
Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-performance



[Postgresql General]     [Postgresql PHP]     [PHP Users]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Yosemite]

  Powered by Linux