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