Eamonn Kent wrote:
I am using PostgreSQL 8.1.4 for an embedded application. For some
reason, vacuum is not able to identify rows that are candidates for
removal (i.e., mark space as available).
[snip]
If I shutdown our application and run a vacuum full, the space is
recovered and the database size goes down to 150M.
The most common answer to this is that your application is leaving open
transactions just sitting there. VACUUM can't remove tuples that may
still need to be visible to a transaction that's been open for days.
---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?
http://archives.postgresql.org