"Pavan Deolasee" <pavan.deolasee@gmail.com> writes:
> On 9/12/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> XXX the above being the case, why should we bother with all this extra
>> mechanism? Seems we could dispense with "not ready for inserts".
> Without this additional step, while we are building the index in the first
> phase
> using a snapshot, its possible that a broken HOT chain may get created
> forwarding to the tuple that we index. For example:
> A table with two columns a and b. Say, we already have an index on 'a'
> and creating a new index on 'b'. Say, there is a tuple (0, 1): (1, 11) in
> the table where (0, 1) in the line pointer of the tuple.
> This is the visible tuple when we took snapshot in the first phase and so
> we shall index this tuple with key 11 and TID (0, 1). But before the first
> phase
> finishes, the tuple is updated to (0, 2): (1, 22). This would be a HOT
> update
> resulting in a broken chain. The root line pointer for the new tuple is
> still (0, 1).
Got it. I'll put something about this into the README.
regards, tom lane