Re: A thought on Index Organized Tables - Mailing list pgsql-hackers

From Karl Schnaitter
Subject Re: A thought on Index Organized Tables
Date
Msg-id d13967f91002251611n28325bbeo6c3f1c98faac03dd@mail.gmail.com
Whole thread Raw
In response to Re: A thought on Index Organized Tables  (Gokulakannan Somasundaram <gokul007@gmail.com>)
Responses Re: A thought on Index Organized Tables
Re: A thought on Index Organized Tables
List pgsql-hackers


On Thu, Feb 25, 2010 at 3:59 PM, Gokulakannan Somasundaram <gokul007@gmail.com> wrote:
I disagree with that, Gokul -- if the ordering operators are volatile or just incorrect, during DELETE, you could set xmax in the wrong IndexTuple. Then there will be another IndexTuple that says it's visible, but it points to a non-visible heap tuple. I think you should follow the pointers to the heap before you decide to let an index tuple remain in the index during vacuum. This would ensure that all references from an index to a heap tuple are removed before vacuuming the heap tuple. I would be worried about what might break if this invariant doesn't hold.

Well, Karl, if we have to support function based indexes/IOT, one thing is for sure. We can't support them for volatile functions / broken data types. Everyone agrees with that. But the question is how we identify something is not a volatile function. Only way currently is to let the user make the decision( Or we should consult some mathematician ). So we need not consult the heaptuple.


First of all, volatility is not the only issue. The ordering ops could also be incorrect, e.g., violate the transitivity property. there is no reliable way to determine if a function is volatile and/or incorrectly specified.

Of course, PG can't "support" indexing with incorrect functions. However, it's worthwhile to guard against too much damage being done if the user's function has a bug. Maybe I'm wrong? Maybe an index tuple with a dangling pointer is actually harmless?

Karl

pgsql-hackers by date:

Previous
From: Tom Lane
Date:
Subject: Re: strict version of version_stamp.pl
Next
From: Tom Lane
Date:
Subject: Re: A thought on Index Organized Tables