Re: get_whatever_oid, part 1: object types with unqualifed names

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Robert Haas <robertmhaas@gmail.com>
Cc: KaiGai Kohei <kaigai@ak.jp.nec.com>, pgsql-hackers@postgresql.org
Date: 2010-06-28T14:53:24Z
Lists: pgsql-hackers
Robert Haas <robertmhaas@gmail.com> writes:
> 2010/6/28 KaiGai Kohei <kaigai@ak.jp.nec.com>:
>> * at the RenameSchema()

> This looks like another syscache reference leak.

Actually that one *is* a leak, although it doesn't matter much because
the leak occurs only in an error path, so transaction abort will clean
up the leaked reference.  Still, it's sucky coding style:
SearchSysCacheExists should have been used.

I'm not sure I agree that replacing SearchSysCacheExists calls (or
things that should have been SearchSysCacheExists calls) with
OidIsValid(get_whatever_oid()) is an improvement.  The Exists call
tells what you're actually trying to accomplish.  The other way is
an overspecification of the required result.

			regards, tom lane