Re: OID wraparound: summary and proposal

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Jan Wieck <JanWieck(at)yahoo(dot)com>
Cc: Tatsuo Ishii <t-ishii(at)sra(dot)co(dot)jp>, pgman(at)candle(dot)pha(dot)pa(dot)us, pgsql-hackers(at)postgresql(dot)org
Subject: Re: OID wraparound: summary and proposal
Date: 2001-08-08 21:27:58
Message-ID: 4793.997306078@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Jan Wieck <JanWieck(at)yahoo(dot)com> writes:
> Keep also in mind that actually the uniqueness of Oid's
> across all tables is used by TOAST to determine that a
> toasted value found in the new tuple is the same than in the
> old one on heap_update() or not.
> It's no big deal, some additional checks of the va_toastrelid
> beeing the same as the target relations toast relation should
> do it.

Good point.

> Now since toast needs the row Oid allways, I think the idea
> of making Oid's in user tables optional is dead.

Why? I see where it's looking at the main-row OID and attno to decide
if it's the same value or not, but this seems strange and wrong. Why
doesn't it just compare va_toastrelid and va_valueid? Considering that
the main point of this comparison is to distinguish values associated
with different versions of the same row, neither main row OID nor
attribute number seem helpful. I don't see why we expend space on
storing va_rowid + va_attno at all.

BTW, I've already completed implementing optional OIDs, so I'm not
going to give up the idea lightly at this point ;-)

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2001-08-08 21:29:32 Re: To be 7.1.3 or not to be 7.1.3?
Previous Message Hannu Krosing 2001-08-08 20:19:11 Re: OID wraparound: summary and proposal