On Fri, Nov 18, 2011 at 8:37 AM, Noah Misch <noah@leadboat.com> wrote:
> I count 1/25 callers overriding nowait and 3/25 overriding missing_ok. So, it's
> looking like a less-common override than the callback function will come to be.
Yeah, you're probably right. However, I think there's another good
reason not to use that signature: in 9.1, the function had a signature
of (RangeVar *, bool). If in 9.2 it ends up with a signature of
(RangeVar *, LOCKMODE), you won't get a compiler warning (at least not
on my system) if you invoke it as RangeVarGetRelid(rel, true). You'll
just get silently (and subtly) different behavior: an error if the
relataion doesn't exist (instead of no error), and an AccessShareLock
if it does (instead of no lock). I think we're best off making sure
that any old-style usage of RangeVarGetRelid() that may be out there
in third-party code fails to compile.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company