Re: Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to
От | Tom Lane |
---|---|
Тема | Re: Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to |
Дата | |
Msg-id | 19877.1269634581@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: Re: [COMMITTERS] pgsql: Augment WAL records for btree delete with GetOldestXmin() to (Simon Riggs <simon@2ndQuadrant.com>) |
Ответы |
Re: Re: [COMMITTERS] pgsql: Augment WAL records for
btree delete with GetOldestXmin() to
|
Список | pgsql-hackers |
Simon Riggs <simon@2ndQuadrant.com> writes: > 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. Uh, no, heap tuples can't be removed until after all index entries that are pointing at them have been removed. Please tell me you have not broken this. > So, barring huge injections of insight, I'll be putting back the > generation of OldestXmin() into the btree delete path. I stand by my previous comments about where this is going to end up. regards, tom lane
В списке pgsql-hackers по дате отправления: