Kevin Kempter <kevin@kevinkempterllc.com> writes:
> Suppose I have a table with say an integer key, a char column and a large
> object column.
> can I simply delete a row from the table (delete from bigtable where...), then
> run a vacuum (or vacuum full) ? If so, in this scenario will postgres release
> the space back to the OS or must I first remove the large object with
> lo_unlink() ?
That would release only the row's space, not the large object's. You
need to do the lo_unlink().
> also, does the contrib vacuumlo perform tasks I cannot do via vacuum and
> lo_unlink ?
It doesn't do any magic. You might want to read the latest cleaned-up
documentation for it:
http://developer.postgresql.org/pgdocs/postgres/vacuumlo.html
The contrib/lo module is also worth reading about.
regards, tom lane