plpgsql Difference in behaviour between versions?

From: Chris McDonald <chrisjonmcdonald(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: plpgsql Difference in behaviour between versions?
Date: 2011-11-23 18:04:14
Message-ID: 18724388.56.1322071454551.JavaMail.geo-discussion-forums@yqzz20
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,
I am upgrading a system from postgresql 8.4.8 (fedora 13 x64) to postgresql 9.0.5 (fedora 15 x64). As I build a database I've noticed that the following works on 8.4.8 but does not work on 9.0.5. Can someone tell me why this is not legal syntax in 9.0.5 but is legal in 8.4.8 please:

===snip===
create type mytype
as
(
somekey integer,
open numeric(14, 2)
);

CREATE OR REPLACE FUNCTION myfunc(IN INTEGER, IN NUMERIC(14, 2))
RETURNS VOID
AS $$
DECLARE
somekey ALIAS FOR $1;
rec mytype;
BEGIN
rec.somekey = somekey;

-- 9.0.5 will fail at the dot character in the
-- following line here with syntax error sqlstate 42601
-- but 8.4.8 is happy.
rec.open = 32;
-- ^

RETURN;
END;
$$ LANGUAGE plpgsql;
===snip===

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Rich Shepard 2011-11-23 18:33:03 Blank Numeric Column For INSERT
Previous Message Raghavendra 2011-11-23 17:01:50 Re: In which catalog postgres Instance Crash time recorded ?