On 22 December 2016 at 00:30, Robert Haas <robertmhaas@gmail.com> wrote:
> That makes everything that happens between when we acquire that lock
> and when we release it non-interruptible, which seems undesirable. I
> think that extra copy of oldestXid is a nicer approach.
That's a side-effect I didn't realise. Given that, yes, I agree.
Since we don't truncate clog much, do you think it's reasonable to
just take XidGenLock again before we proceed? I'm reluctant to add
another acquisition of a frequently contested lock for something 99.9%
of the codebase won't care about, so I think it's probably better to
add a new LWLock, and I'll resubmit on that basis, but figure it's
worth asking.
-- Craig Ringer http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services