Re: What is an item pointer, anyway?

From: Peter Geoghegan <pg(at)bowt(dot)ie>
To: Ashwin Agrawal <aagrawal(at)pivotal(dot)io>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: What is an item pointer, anyway?
Date: 2019-04-26 23:53:13
Message-ID: CAH2-Wz=yYwrjb41e=1tMbSUoEcj85MFKcGOC0QhrdJP+S17LNQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Apr 26, 2019 at 4:23 PM Ashwin Agrawal <aagrawal(at)pivotal(dot)io> wrote:
> How about we rename ItemPointerData to TupleIdentifier or ItemIdentifier instead and leave ItemPointer or Item confined to AM term, where item can be tuple, datum or anything else ?

I'm not a fan of that idea, because the reality is that an
ItemPointerData is quite explicitly supposed to be a physiological
identifier (TID) used by heapam, or a similar heap-like access method
such as zheap. This is baked into a number of things.

The limitation that pluggable storage engines have to work in terms of
item pointers is certainly a problem, especially for things like the
Zedstore column store project you're working on. However, I suspect
that that problem is best solved by accommodating other types of
identifiers that don't work like TIDs.

I understand why you've adopted ItemPointerData as a fully-logical
identifier in your prototype, but it's not a great long term solution.

--
Peter Geoghegan

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2019-04-26 23:57:20 Re: What is an item pointer, anyway?
Previous Message Bruce Momjian 2019-04-26 23:49:14 Re: Optimizer items in the release notes