On 09/25/2013 12:06 AM, Jeff Janes wrote: >> Why do we need a procarraylock for this? Seems like the solution would >> be not to take a lock at all; the information on transaction commit is >> in the clog, after all. >> > > My understanding is that you are not allowed to check the clog until after > you verify the transaction is no longer in progress, otherwise you open up > race conditions. In this particular case, I'd argue that we don't care about race conditions -- it's a plan estimate. We certainly care about them a lot less than lock-blocks. -- Josh Berkus PostgreSQL Experts Inc. http://pgexperts.com -- Sent via pgsql-performance mailing list (pgsql-performance@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-performance