language name case sensitivity, also known as plpgsql <> 'PLpgSQL'
Folks,
I'm testing some code on 9.2dev (trunk), and I've noticed that
postgresql seems to be fussy about language case when creating a
function.
So for instance:
create function foo() returns int AS $$ BEGIN return 1; END; $$
LANGUAGE 'PLpgSQL';
Will be fine on 8.3 (my current version used in product), but not so
fine when using 9.2dev.
I think this is obviously a regression. What you say ?
--
GJ
On 26 March 2012 16:30, Gregg Jaskiewicz <gryzman@gmail.com> wrote:
Folks,
I'm testing some code on 9.2dev (trunk), and I've noticed that
postgresql seems to be fussy about language case when creating a
function.
So for instance:
create function foo() returns int AS $$ BEGIN return 1; END; $$
LANGUAGE 'PLpgSQL';Will be fine on 8.3 (my current version used in product), but not so
fine when using 9.2dev.I think this is obviously a regression. What you say ?
Probably something to do with this:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=67dc4eed42186ba6a2456578899bfd38d003201a
--
Thom
On 26 March 2012 16:41, Thom Brown <thom@linux.com> wrote:
Probably something to do with this:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=67dc4eed42186ba6a2456578899bfd38d003201a
Sounds very plausible.
Would you call it a regression ? I would say so, but not sure what
would be an argument on the other side then ?
Mine is, that some of currently used code will fail on this for no
apparent benefit.
Plus the bit where he says, that params in quotes will be lowercased -
obviously doesn't work then
--
GJ
Gregg Jaskiewicz <gryzman@gmail.com> writes:
On 26 March 2012 16:41, Thom Brown <thom@linux.com> wrote:
Probably something to do with this:
http://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=67dc4eed42186ba6a2456578899bfd38d003201a
Would you call it a regression ?
It's an intentional change to make handling of language names less
bizarrely different from every other name in SQL. Personally, I'd
recommend getting rid of the single quotes. Use of a string literal for
a language name has been poor style since 7.2 or thereabouts, and it is
foreseeable that at some point we'd stop accepting string literals for
this purpose altogether.
regards, tom lane