Re: [HACKERS] Fwd: Joins and links - Mailing list pgsql-hackers

From Vadim Mikheev
Subject Re: [HACKERS] Fwd: Joins and links
Date
Msg-id 3781E49D.96036773@krs.ru
Whole thread Raw
In response to Re: [HACKERS] Fwd: Joins and links  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses RE: [HACKERS] Fwd: Joins and links
List pgsql-hackers
Tom Lane wrote:
> 
> I am not sure there's anything fundamentally wrong with his basic point;
> if, say, we could find a way to construct OIDs so that a tuple could be
> found very quickly from its OID, that wouldn't violate the relational
> model AFAICS, and such OIDs would work fine as "links".  But I don't see
> any way to do that without either giving up UPDATE or introducing a huge
> amount of baggage into all processes that can update tables (VACUUM
> being the worst case, likely).  Without doubt the best compromise would
> look remarkably like an index on OID.

There is no problems with UPDATE: updated tuple points to newer
version, so we can avoid update of referencing tuples here.
VACUUM would have to update referencing tuples (via normal
heap_replace, nothing special) while removing old versions. 
This may cause deadlocks but we could give vacuum higher priority
and abort others.

So, vacuum is the worst case, as pointed by Tom.
No problems with MVCC and other things.

Vadim


pgsql-hackers by date:

Previous
From: Camil Coaja
Date:
Subject: Trigger functions written in C never get called
Next
From: Vadim Mikheev
Date:
Subject: Re: AW: [HACKERS] Fwd: Joins and links