Vacuum Full will not help here if you have large objects present in the pg_largeobjects table but not being referred to by any table. Vacuumlo doesn't require downtime but based on the data it needs to remove can run long and use resources and hence schedule it in off peak hours. You can do a dry run to get an estimate.
I've got a cluster that's having issues with pg_catalog.pg_largeobject getting massively bloated. Vacuum is running OK and there's 700GB of free space in the table and only 100GB of data, but subsequent inserts seem to be not using space from the FSM and instead always allocating new pages. The table just keeps growing.
Is this a known thing, maybe something special about LOs?
Also, is the only way to recover space here a vacuum full on the table since it's a catalog table?
Thanks,
-- Jon Erdman (aka StuckMojo on IRC) PostgreSQL Zealot