Thread: autovacuum and dead tuples

autovacuum and dead tuples

From
Date:
<span style="font-family:Verdana; color:#000000; font-size:10pt;"><div>We are running PostgreSQL 9.1.6 with autovacuum
=on and I am reporting on dead tuples using the pgstattuple extension. Each time I run the pgstattuple package our dead
tuplescounts decrease. My colleague is under the impression that dead tuples are only cleaned up via vacuum full only,
whileI suggested that the autovaccum process was cleaning up these dead tuples. Is this true?</div><div><br
mce_bogus="1"/></div><div>Thanks</div><div><br /></div><div><br /></div></span> 

Re: autovacuum and dead tuples

From
Shaun Thomas
Date:
On 09/18/2013 10:42 AM, fburgess@radiantblue.com 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@optionshouse.com

______________________________________________

See http://www.peak6.com/email_disclaimer/ for terms and conditions related to this email