Christopher Browne wrote:
> [EMAIL PROTECTED] (Aleksey Serba) wrote:
>
>>   Hello!
>>
>>   I have 24/7 production server under high load.
>>   I need to perform vacuum full on several tables to recover disk
>>   space / memory  usage frequently ( the server must be online during
>>   vacuum time )
>
>
> The main thought is: "Don't do that."
>
> It is almost certainly the wrong idea to do a VACUUM FULL.
>
> Assuming that the tables in question aren't so large that they cause
> mass eviction of buffers, it should suffice to do a plain VACUUM (and
> NOT a "VACUUM FULL") on the tables in question quite frequently.

This is easy to say and almost impraticable. I run a 7.4.5 with the autovacuum:

pg_autovacuum -d 3 -v 300 -V 0.5 -S 0.8 -a 200 -A 0.8

I have also a "vacuumdb -z -v -a"  running each six hours and if i don't execute
a vacuum FULL for one weeks I collect almost 400 MB of dead rows :-(
For this reason even with a 7.4.5 I'm obliged to run a vacuum full at least once
a week and a reindex once a month.

And my FSM parameters are large enough:

INFO:  free space map: 141 relations, 26787 pages stored; 26032 total pages needed
DETAIL:  Allocated FSM size: 1000 relations + 2000000 pages = 11780 kB shared memory.


Regards Gaetano Mendola

PS: I do not have any "idle in transaction" connections around.





---------------------------(end of broadcast)---------------------------
TIP 5: Have you checked our extensive FAQ?

http://www.postgresql.org/docs/faqs/FAQ.html

Reply via email to