we have a table with an heavy traffic of pg_bulkload and delete of records. The size pass, in only one day, for example for 1Gb to 4Gb and then 1Gb back.
We have important problems on size and the only way to gain free space is issueing a vacuum full <table>. But the operation is very slow, sometimes 2/4 hours, and table is not available for services as it is locked.
We do not delete everything at one (in this case the truncate woudl resolve the problem).
The autovacuum is not able (same for normal vacuum) to free the spaces.
Are there some suggestions or another way to manage this?
> but it won't let it grow too (or am I missing something).
Yes, you are missing something. By partioning and {Vacuum Full only the table with data no longer needed}, the rest of the data remains available to the users AND space is reclaimed by the O/S, so it's the best of both worlds.
--
Melvin Davidson I reserve the right to fantasize. Whether or not you wish to share my fantasy is entirely up to you.