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
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 |