BUG #7711: Accessing nested composite types in PL/PgSQL doesn't work

From: mkolomeitsev(at)gmail(dot)com
To: pgsql-bugs(at)postgresql(dot)org
Subject: BUG #7711: Accessing nested composite types in PL/PgSQL doesn't work
Date: 2012-11-29 05:27:33
Message-ID: E1Tdwer-0000Ff-5m@wrigleys.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

The following bug has been logged on the website:

Bug reference: 7711
Logged by: Michael Kolomeitsev
Email address: mkolomeitsev(at)gmail(dot)com
PostgreSQL version: 9.2.1
Operating system: Arch Linux
Description:

It seems multiple dots (".") are not allowed. For example: a.b.c := value;

How to reproduce:
CREATE TABLE nodes (
id SERIAL NOT NULL PRIMARY KEY,
name TEXT NOT NULL
);

CREATE TYPE pathId AS (
id INTEGER,
node nodes
);

CREATE OR REPLACE FUNCTION test_AEN7304() RETURNS void AS $$
DECLARE
r pathId;
n nodes;
BEGIN
n.name := 'abc';
r.id := 1;
r.node := n; -- All is ok
r.node.name := 'def'; -- << Error here
-- (r).node.name := 'def'; -- << and here
-- ((r).node).name := 'def'; -- << and here
END;
$$ LANGUAGE 'plpgsql';

ERROR: "r.node.name" is not a known variable

(From http://archives.postgresql.org/pgsql-novice/2012-11/msg00057.php)

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message francois.bonzon 2012-11-29 05:32:16 BUG #7712: pgsql2shp should set Language Driver ID (LDID) header in .dbf
Previous Message Jeff Janes 2012-11-28 21:00:52 Re: PITR potentially broken in 9.2