Re: Rename dead_tuples to dead_items in vacuumlazy.c - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Rename dead_tuples to dead_items in vacuumlazy.c
Date
Msg-id CA+TgmoYAye7n9a_0i_Pr=WmHMNttYq5p96_nDmSP-MCq8rO1yg@mail.gmail.com
Whole thread Raw
In response to Re: Rename dead_tuples to dead_items in vacuumlazy.c  (Alvaro Herrera <alvherre@alvh.no-ip.org>)
Responses Re: Rename dead_tuples to dead_items in vacuumlazy.c
List pgsql-hackers
On Wed, Nov 24, 2021 at 9:37 AM Alvaro Herrera <alvherre@alvh.no-ip.org> wrote:
> My mental model is that "tuple" (in the narrow context of heap vacuum)
> is the variable-size on-disk representation of a row in a page; "line
> pointer" is the fixed-size struct at the bottom of each page that
> contains location, size and flags of a tuple: struct ItemIdData.  The
> TID is the address of a line pointer -- an ItemPointerData.
>
> What is an item?  Is an item the same as a line pointer?  That seems
> confusing.  I think "item" means the tuple as a whole.  In that light,
> using the term TID for some of the things that the patch renames to
> "item" seems more appropriate.

Hmm. I think in my model an item and an item pointer and a line
pointer are all the same thing, but a TID is different. When I talk
about a TID, I mean the location of an item pointer, not its contents.
So a TID is what tells me that I want block 5 and the 4th slot in the
item pointer array. The item pointer tells me that the associate tuple
is at a certain position in the page and has a certain length.

-- 
Robert Haas
EDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: Post-CVE Wishlist
Next
From: Japin Li
Date:
Subject: Minor documentation fix - missing blank space