From: | Gurjeet Singh <singh(dot)gurjeet(at)gmail(dot)com> |
---|---|
To: | Josh Berkus <josh(at)agliodbs(dot)com> |
Cc: | "Florian G(dot) Pflug" <fgp(at)phlo(dot)org>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Postgresql-Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: DEFAULT of domain ignored in plpgsql (8.4.1) |
Date: | 2009-11-21 16:27:16 |
Message-ID: | 65937bea0911210827m61d1e781i3d6cf90e06c79e18@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Sat, Nov 21, 2009 at 7:26 AM, Josh Berkus <josh(at)agliodbs(dot)com> wrote:
>
> > Would a patch that changes that have any chance of being accepted? Or is
> > the gain (not having to repeat the DEFAULT clause, and being able to
> > maintain it at one place instead of many) considered too small compared
> > to the risk of breaking existing code?
>
> I don't think there's a lot of risk of code breakage; few people use
> domains, fewer use them with defaults, and you might be the only one
> using them as variable types. And there are going to be more
> substantial backwards compat issues with the lexer changes anyway. As
> long as we remember to flag the compatibility issue in the release
> notes, I don't see it as a problem.
>
> However, there are some other issues to be resolved:
>
> (1) what should be the interaction of DEFAULT parameters and domains
> with defaults?
>
The function's DEFAULT parameter should take precedence over the default of
the domain.
>
> (2) this change, while very useful, does change what had been a simple
> rule ("All variables are NULL unless specifically set otherwise") into a
> conditional one ("All variables are NULL unless set otherwise OR unless
> they are declared as domain types with defaults"). Do people feel that
> the new behavior would be sufficiently intuitive to avoid user confusion?
>
I see this as a straight-forward extension to what we've had till now; and I
bet some users would've definitely expected them to work this way in the
past..
>
> (3) Last I checked, there were still several places in which domains did
> not behave consistently in stored procedures. I think that Elein had
> some unfinished patches in this regard -- you'll want to search the
> archives and the TODO list.
>
One thing to remember is that, that this behavior should be supported in all
PLs that support domain types as variables.
Best regards,
--
Lets call it Postgres
EnterpriseDB http://www.enterprisedb.com
gurjeet[(dot)singh](at)EnterpriseDB(dot)com
singh(dot)gurjeet(at){ gmail | hotmail | yahoo }.com
Twitter: singh_gurjeet
Skype: singh_gurjeet
Mail sent from my BlackLaptop device
From | Date | Subject | |
---|---|---|---|
Next Message | Andrew Dunstan | 2009-11-21 16:34:29 | Re: xpath_table equivalent |
Previous Message | Tom Lane | 2009-11-21 15:52:14 | Re: DEFAULT of domain ignored in plpgsql (8.4.1) |