External size of table still not released (as disk space) after issuing truncate command
I think with a truncate even without a VACUUM FULL the space is released back to the OS. My guess is per the other question that you've got a backend process holding the underlying file open.


Find out what the file is. SELECT pg_relation_filepath('links_groupseen');
Find the data directory SHOW data_directory;
Run truncate.
See what's holding it open. lsof $data_directory/$relation_filepath


I think the most likely bet is something is holding it open if not, we'll have to know whether or not Pg is deleting the underlying relation_filepath before and after the truncate command and if anything has that file open (if it exists). You may have to run lsof before the truncate too.