On Sun, 2010-01-31 at 23:43 +0200, Heikki Linnakangas wrote: > When replaying the deletion record, the standby could look at all the > heap tuples whose index pointers are being removed, to see which one > was newest.
Long after coding this, I now realise this really is a dumb-ass idea. There is no spoon. The index tuples did once point at valid heap tuples. 1. heap tuples are deleted 2. heap tuples become dead 3. index tuples can now be marked killed 4. index tuples removed Heap tuples can be removed at step 2, index tuples can't be removed until step 4. so the dead index tuples can't be followed reliably to read the xids. They might be the correct ones, might not, and no way to tell. So that puts this back to exactly the place we were on 31 Jan: On Sun, 2010-01-31 at 17:10 -0500, Tom Lane wrote: > We can always put it back later if nothing better gets > implemented. So, barring huge injections of insight, I'll be putting back the generation of OldestXmin() into the btree delete path. -- Simon Riggs www.2ndQuadrant.com -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers