> I'm planning to vacuum FULL a pg_largeobject relation (after vacuumlo'ing > it). The relation is 300GB large so I'm concerned the operation will write > full my pg_xlog directory which is on a 200GB (net) RAID1 SSD. > > Where does vacuum FULL rewrite to, does it use pg_xlog or some other > directory? > > Which version of PostgreSQL is this ?
If i got your question correctly, VACUUM FULL would rewrite the data to a new data file associated with that particular relation (Table) in the "$PGDATA/base" directory. This needs an extra disk space at the OS level (this is not related to pg_xlog directory). As VACUUMING is a data change operation, "pg_xlog" will also have only the WAL data (modifications) written at the time of VACUUMING. http://www.postgresql.org/docs/9.4/static/sql-vacuum.html Regards, Venkata Balaji N Fujitsu Australia