Re: What is an 'unused item pointer'

From: "Jim C(dot) Nasby" <jnasby(at)pervasive(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-general(at)postgresql(dot)org, pgman(at)candle(dot)pha(dot)pa(dot)us
Subject: Re: What is an 'unused item pointer'
Date: 2005-09-25 00:27:54
Message-ID: 20050925002754.GT7630@pervasive.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On Sat, Sep 24, 2005 at 07:19:10PM -0400, Tom Lane wrote:
> "Jim C. Nasby" <jnasby(at)pervasive(dot)com> writes:
> > I can't seem to find info about this in the docs, or on the web.
>
> http://developer.postgresql.org/docs/postgres/storage-page-layout.html
>
> Currently, when a tuple is reclaimed by VACUUM, we just mark its item
> pointer as unused (and hence recyclable). I think it might be safe to
> decrease pd_lower if there are unused pointers at the end of the page's
> pointer array, but we don't currently do that. In any case there could
> still be unused pointers embedded within the array.

I suspect that if the free space in pages isn't collapsed during vacuum
then it probably doesn't matter, but I don't know if that's the case. If
it is collapsed then my intuition is that tables that are fairly narrow
would benefit from adjusting pd_lower because it wouldn't take too many
item pointers to equate to a tuple. This would probably be even more
pronounced if the tuples were generally small but could vary to a larger
size.

Sounds like a good newbie TODO?
--
Jim C. Nasby, Sr. Engineering Consultant jnasby(at)pervasive(dot)com
Pervasive Software http://pervasive.com work: 512-231-6117
vcard: http://jim.nasby.net/pervasive.vcf cell: 512-569-9461

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sterpu Victor 2005-09-25 00:46:38 createdb problem
Previous Message Tom Lane 2005-09-24 23:19:10 Re: What is an 'unused item pointer'