On Fri, 2010-11-26 at 01:11 -0500, Tom Lane wrote:
> Simon Riggs <simon@2ndQuadrant.com> writes:
> > That would mean running GetCurrentTransactionId() inside LockAcquire()
>
> > if (lockmode >= AccessExclusiveLock &&
> > locktag->locktag_type == LOCKTAG_RELATION &&
> > !RecoveryInProgress())
> > (void) GetCurrentTransactionId();
>
> > Any objections to that fix?
>
> Could we have a wal level test in there too please? It's pretty awful
> in any case...
Slightly neater version of same idea applied to resolve this.
-- Simon Riggs http://www.2ndQuadrant.com/books/PostgreSQL Development, 24x7 Support, Training and Services