From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
Cc: | Brad Nicholson <bnichols(at)ca(dot)afilias(dot)info>, pgsql-general <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Need help understanding vacuum verbose output |
Date: | 2010-08-06 16:35:59 |
Message-ID: | 5178.1281112559@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Alvaro Herrera <alvherre(at)commandprompt(dot)com> writes:
> Excerpts from Brad Nicholson's message of vie ago 06 12:01:27 -0400 2010:
>> It found 45878 dead tuples in 396 pages for the index authors_archive_pkey.
>> It found 16558 dead tuples in 492 pages for the table authors_archive.
> But why did it choose to skip the rest of the pages in authors_archive,
> if there certainly are a lot of vacuumable tuples in (some of) them?
I think the discrepancy is probably explained here:
/*
* DEAD item pointers are to be vacuumed normally; but we don't
* count them in tups_vacuumed, else we'd be double-counting (at
* least in the common case where heap_page_prune() just freed up
* a non-HOT tuple).
*/
That last message prints tups_vacuumed, but those other ones are counting
all the removed item pointers. So apparently Gordon had a whole lot of
pre-existing DEAD item pointers. I wonder why ...
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Denis BUCHER | 2010-08-06 16:49:38 | Unable to stop postgresql ("failed") -> [SOLVED] |
Previous Message | Gordon Shannon | 2010-08-06 16:17:46 | Re: Need help understanding vacuum verbose output |