On Fri, Mar 20, 2015 at 10:54 AM, David Christensen <[email protected]> wrote:
> In that case, the other thought I had here is that we change the function 
> signature of current_setting() to be a two-arg form where the second argument 
> is a boolean "throw_error", with a default argument of true to preserve 
> existing semantics, and returning NULL if that argument is false.  However, 
> I'm not sure if there are some issues with changing the signature of an 
> existing function (e.g., with pg_upgrade, etc.).
>
> My *impression* is that since pg_upgrade rebuilds the system tables for a new 
> install it shouldn't be an issue, but not sure if having the same pg_proc OID 
> with different values or an alternate pg_proc OID would cause issues down the 
> line; anyone know if this is a dead-end?

I think if the second argument is defaulted it would be OK.  However
it might make sense to instead add a new two-argument function and
leave the existing one-argument function alone, because setting
default arguments for functions defined in pg_proc.h is kind of a
chore.

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


-- 
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to