mlw <[EMAIL PROTECTED]> writes:
> Now, what if we did it another way, copy the old version of the row into the
> new row and update the tuple in place?

I don't think we can get away with moving the extant tuple.  If we did,
a concurrent scan that should have found the old tuple might miss it.
(This is why VACUUM FULL needs exclusive lock to move tuples.)

It's fairly unclear whether this would actually buy any performance
gain, anyway.  In the case of a seqscan I don't see that it makes any
difference on average, and in the case of an indexscan what matters is
the index ordering not the physical location.  (In this connection,
btree indexes already do the "right thing", cf comments for
_bt_insertonpg.)

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to [EMAIL PROTECTED]

Reply via email to