Re: stone-age maintenance procedures ;-)

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Ulrich Wisser <ulrich(dot)wisser(at)relevanttraffic(dot)se>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: stone-age maintenance procedures ;-)
Date: 2004-08-26 14:42:23
Message-ID: 17496.1093531343@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Ulrich Wisser <ulrich(dot)wisser(at)relevanttraffic(dot)se> writes:
> max_fsm_relations = 10000
> max_fsm_pages = 100000

> The total database size on disk is ~6GB.

Most likely, you need larger max_fsm_pages. 6GB would work out to about
750K pages (of 8K each). With max_fsm_pages of 100K you are saying that
you don't expect more than one page in eight to have interesting amounts
of free space. That would be plenty for a low-turnover database ...
but ...

> Some tables get changed *very* frequently. A nightly "vacuum full
> analyze" frees about 250,000 rows on each of three tables.

... that does not sound like a low-turnover database.

> And yes I will change to 7.4 this week.

Once you are on 7.4, you can do a database-wide VACUUM VERBOSE to get
some stats about how loaded or overloaded the FSM is. Look at the last
few lines of the (very voluminous) output. If you have several active
databases, do a database-wide VACUUM in each of them and then look at
the VERBOSE result for the last. You want "total pages needed" to be
comfortably less than max_fsm_pages.

regards, tom lane

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Guy Fraser 2004-08-26 14:51:08 Re: copy a database
Previous Message Tom Lane 2004-08-26 14:28:07 Re: copy a database