On 09/18/2013 10:42 AM, fburgess@xxxxxxxxxxxxxxx wrote:
My colleague is under the impression that dead tuples are only cleaned up via vacuum full only, while I suggested that the autovaccum process was cleaning up these dead tuples. Is this true?
You are correct. Only VACUUM FULL (or CLUSTER) physically removes dead tuples from the table, but a regular VACUUM enters them into the free space map for reuse, so they wouldn't show up in the dead_tuple_count column in pgstattuple. It's possible your colleague was confused by the physical removal versus reassignment.
Keep in mind that the dead tuples are still in the table, but reusable. The free_space column and free_percent is a better description of table bloat from data turnover cleaned up by autovacuum.
-- Shaun Thomas OptionsHouse | 141 W. Jackson Blvd. | Suite 500 | Chicago IL, 60604 312-676-8870 sthomas@xxxxxxxxxxxxxxxx ______________________________________________ See http://www.peak6.com/email_disclaimer/ for terms and conditions related to this email -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance