You're saying that the dirtyness of a table is proportional to when you plan on vacuuming it next. I don't see that connection at all. The only correlation I might see is if it happens to be 5:59 AM when your DB decides your table is dirty, and your maintenance window closes at 6:00 AM. Then you have to program the maintenance window to gracefully unplug the vacuum. Currently, autovacuum runs every minute and checks to see if any tables meet the requirements for vacuuming. Are the requirements the amount of time a vacuum would take, or the raw number of dirty tuples? One might be a function of the other, for sure, but exactly what does the autovacuumer use to decide when to clean? -- Brandon Aiken CS/IT Systems Engineer -----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Matthew O'Connor Sent: Tuesday, December 19, 2006 5:37 PM To: Glen Parker Cc: Postgres general mailing list Subject: Re: [GENERAL] Autovacuum Improvements Glen Parker wrote: > Erik Jones wrote: >> Matthew O'Connor wrote: >>> Glen Parker wrote: >>>> If it isn't there somewhere already, I would ask to add: >>>> Expose a very easy way to discover autovacuum's opinion about a >>>> particular table, for example "table_needs_vacuum(oid)", ignoring >>>> any time constraints that may be in place. >>> >>> This might be a nice feature however in the presence of the much >>> talked about but not yet developed maintenance window concept, I'm >>> not sure how this should work. That is, during business hours the >>> table doesn't need vacuuming, but it will when the evening >>> maintenance window opens up. > > >> Well, what he's saying is, "Not taking into account any >> time/maintenance windows, does this table need vacuuming?" > > Correct. IOW, "does it need it?", not "would you actually do it at this > time?"... I understand that, but it's a subjective question. The only question autovacuum answers is "Am I going to vacuum this table now?", so in the current setup you probably could create a function that answers your question, I was just pointing out in the future when maintenance windows get implemented that this question becomes less clear. ---------------------------(end of broadcast)--------------------------- TIP 5: don't forget to increase your free space map settings