Hi, On 2018-12-14 21:39:48 +0300, Alexander Korotkov wrote: > On Fri, Dec 14, 2018 at 4:43 AM Andres Freund <and...@anarazel.de> wrote: > > This leads me to think that we possibly should move computation of the > > last removed xid from recovery to the primary, during the generation of > > the xl_btree_delete WAL record. > > Do I understand correctly that we need this xid computation, because > we may delete some index tuples using kill_prior_tuple before we prune > corresponding heap tuples (which would be also replicated and cause > required conflict)?
Correct. > If so, then can we just give up with that? That is before setting > kill_prior_tuple = true, prune corresponding heap tuples. That'd require WAL logging such changes, which'd be pretty bad, because we'd need to do it one-by-one. What we could do, and what I suggested earlier, is that we do a bit more pruning when emitting such WAL records. Greetings, Andres Freund