Thread: vacuuming and freed disk space

vacuuming and freed disk space

From
john
Date:
i am looking at our database table maintenance. we are running a "space
watch" task that looks at available disk space and removes old records
when/if a certain threshold is passed.

i've noticed that if i run a "bulk delete" followed by a vacuum the
actual disk space is usually not recovered. if i use "vacuum full"
instead of just plain "vacuum" the space is recovered (i am using df
to look at the partition usage statistics). also, if i run just plain
"vacuum" and wait around for a bit, eventually the space will be
recovered. i haven't nailed down whether this is because of other usage
or something that the server does...

so, the questions:
1) is there a way to recover the disk space without doing a "vacuum
full"? i don't want to do the table lock if i don't have to.
2) *is* the postgresql server periodically recovering that disk space?
if so, how often does it do this, and does it lock the table when it
does?
3) anyone have any other good ideas on how to implement this sort of
"space watch" functionality?

thanks.
john
--
john <pgadmin.12.ptechjohn@spamgourmet.com>