Re: Another issue in default-values patch: defaults expanded too soon - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Another issue in default-values patch: defaults expanded too soon
Date
Msg-id 603c8f070812162000i29496a6at2188ac498cad6d86@mail.gmail.com
Whole thread Raw
In response to Re: Another issue in default-values patch: defaults expanded too soon  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Another issue in default-values patch: defaults expanded too soon  ("Pavel Stehule" <pavel.stehule@gmail.com>)
List pgsql-hackers
On Tue, Dec 16, 2008 at 9:18 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Robert Haas" <robertmhaas@gmail.com> writes:
>> I wonder whether the whole architecture is wrong here.  Perhaps when a
>> function is created with N arguments of which M have default values,
>> we should actually create M entries in pg_proc: one for each possible
>> number of arguments from N-M up through N.
>
> That's been considered and rejected before, in the context of the
> variadic-function patch which has a lot of the same issues.  What it
> mostly does is bloat pg_proc.

Only if you have a large number of functions with a large number of
optional arguments each.  That's possible, I suppose, but it hardly
seems likely, or worth worrying about.

>> I think this would kill all of the problems reported thus far at one
>> blow.
>
> No, it doesn't resolve any of them ... particularly not the ones
> associated with defaults for polymorphics.

I think that's hyperbole.  You would probably still need to forbid
non-polymorphic defaults for polymorphic parameters (you might be able
to make NULL work, and maybe the empty array for anyarray...  not
sure), but I think that most of the other issues you raised would be
addressed by my proposal.  You may hate it anyway; I'm OK with that.
:-)

...Robert


pgsql-hackers by date:

Previous
From: "Brendan Jurd"
Date:
Subject: Re: Variadic parameters vs parameter defaults
Next
From: Tom Lane
Date:
Subject: Re: Variadic parameters vs parameter defaults