Re: Meaning of vacuum output - Mailing list pgsql-general

From Jeffrey W. Baker
Subject Re: Meaning of vacuum output
Date
Msg-id 1011205133.16847.24.camel@heat
Whole thread Raw
In response to Re: Meaning of vacuum output  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Meaning of vacuum output  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-general
On Wed, 2002-01-16 at 10:08, Tom Lane wrote:
> "Jeffrey W. Baker" <jwbaker@acm.org> writes:
> > rupert=# vacuum verbose resp_header;
> > NOTICE:  --Relation resp_header--
> > NOTICE:  Pages 28276: Changed 4, Empty 0; Tup 2437108: Vac 0, Keep
> > 2295773, UnUsed 96275.
> >         Total CPU 1.79s/0.38u sec elapsed 2.72 sec.
> > VACUUM
> > rupert=# select count(*) from resp_header;
> >  count
> > --------
> >  141357
> > (1 row)
>
> > There's nowhere near 2.437e6 tuples in the table, but the difference
> > between Tup and Keep seems to be the number of tuples in the table.  But
> > what does this mean?  Are there 2.295e6 deleted tuples hanging around in
> > the table?
>
> Kinda looks that way.  Do you have open transactions hanging around that
> might still be able to see those tuples?

I shut down all connections, and vacuum has a different output:

NOTICE:  Pages 33639: Changed 226, Empty 0; Tup 128819: Vac 2840812,
Keep 0, UnUsed 96275.
        Total CPU 14.29s/28.69u sec elapsed 233.02 sec.

So I conclude from these two data points that Keep means tuples that are
still visible to a transaction, Vac means tuples that are not visible to
any transaction.  But, what is UnUsed?

-jwb


pgsql-general by date:

Previous
From: Tom Lane
Date:
Subject: Re: Meaning of vacuum output
Next
From: "Jeffrey W. Baker"
Date:
Subject: Re: Meaning of vacuum output