Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> So what we need to do is check whether the outdate was done by a
> later CommandId than current. I see that your patch is attempting
> to deal with these issues by testing GetCurrentCommandId(false) !=
> estate->es_output_cid, but that seems completely wrong to me, as
> what it does is complain if *any* additional command has been
> executed in the transaction, regardless of what changed the target
> tuple. It ought to be comparing the tuple's xmax to
> es_output_cid. And the comment needs to cover why it's worrying
> about that.
OK. I'll rework based on your comments.
> Also, what's the point of testing update_ctid? I don't see that
> it matters whether the outdate was a delete or an update.
The update_ctid code was a carry-over from my old, slightly
different approach, which I failed to change as I should have. I'll
fix that along with the other.
Thanks,
-Kevin