On Tue, Aug 23, 2016 at 2:32 PM, Ilya Kazakevich <Ilya.Kazakevich@xxxxxxxxxxxxx> wrote: >>does that mean that I should always execute a VACUUM to recover the >>wasted space when an error is triggered or will the auto-vacuum mechanism >>do the job by itself ? > If you have autovacuum enabled it will clean up tablespace. However, space will not be returned to filesystem but will be reused by database. > You may run VACUUM FULL manually to return it to filesystem. A normal vacuum may also return some space, specially after a big bulk load, see second paragraph of 23.1.2 the URL you posted: > https://www.postgresql.org/docs/9.1/static/routine-vacuuming.html Where it says "However, it will not return the space to the operating system, except in the special case where one or more pages at the end of a table become entirely free and an exclusive table lock can be easily obtained.". A big aborted bulk load may just fit the case, as it may put a lot of tuples at new pages at the end and be executed in a low-load period where the lock is easier to acquire. Francisco Olarte. -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general