Re: a modest improvement to get_object_address()

Robert Haas <robertmhaas@gmail.com>

From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-hackers@postgresql.org
Date: 2011-11-09T16:00:09Z
Lists: pgsql-hackers

Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Try to acquire relation locks in RangeVarGetRelid.

On Wed, Nov 9, 2011 at 10:33 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> On Wed, Nov 9, 2011 at 9:54 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>>> I would think you need to drop the now-useless lock, and I sure hope
>>> that RangeVarGetRelid does likewise.
>
>> It doesn't currently.  The now-useless lock doesn't really hurt
>> anything, aside from taking up space in the lock table.
>
> Well, there are corner cases where the object OID gets reused during
> the lifetime of the transaction, and then the lock *does* do something
> (and what it does would be bad).  But taking up extra space in the
> finite-size lock table is sufficient reason IMO to drop the lock.
> It's not like these are performance-critical code paths.

OK.

-- 
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company