| From: | "Matthew T(dot) O'Connor" <matthew(at)zeut(dot)net> |
|---|---|
| To: | Jeremy Haile <jhaile(at)fastmail(dot)fm> |
| Cc: | pgsql-performance(at)postgresql(dot)org |
| Subject: | Re: Autoanalyze settings with zero scale factor |
| Date: | 2007-01-18 19:20:11 |
| Message-ID: | 45AFC86B.9010704@zeut.net |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-performance |
Jeremy Haile wrote:
> I changed the table-specific settings so that the ANALYZE base threshold
> was 5000 and the ANALYZE scale factor is 0. According to the documented
> formula: analyze threshold = analyze base threshold + analyze scale
> factor * number of tuples, I assumed that this would cause the table to
> be analyzed everytime 5000 tuples were inserted/updated/deleted.
That is right, and exactly how the scaling factor / base value are
supposed to work, so this should be fine.
> However, the tables have been updated with tens of thousands of inserts
> and the table has still not been analyzed (according to
> pg_stat_user_tables). Does a scale factor of 0 cause the table to never
> be analyzed? What am I doing wrong? I'm using PG 8.2.1.
No a scaling factor of 0 shouldn't stop the table from being analyzed.
Unless it's just a bug, my only guess is that autovacuum may be getting
busy at times (vacuuming large tables for example) and hasn't had a
chance to even look at that table for a while, and by the time it gets
to it, there have been tens of thousands of inserts. Does that sounds
plausible?
Also, are other auto-vacuums and auto-analyzes showing up in the
pg_stats table? Maybe it's a stats system issue.
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Jeremy Haile | 2007-01-18 20:21:47 | Re: Autoanalyze settings with zero scale factor |
| Previous Message | Jeremy Haile | 2007-01-18 18:37:54 | Autoanalyze settings with zero scale factor |