This is a discussion on BUG #1702: Function returning nested composite types within the pgsql Bugs forums, part of the PostgreSQL category; --> The following bug has been logged online: Bug reference: 1702 Logged by: Jan Behrens Email address: jan@monso.de PostgreSQL version: ...
| |||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| The following bug has been logged online: Bug reference: 1702 Logged by: Jan Behrens Email address: jan@monso.de PostgreSQL version: 8.0.3 Operating system: NetBSD Description: Function returning nested composite types Details: Following input: CREATE TYPE test1 AS (a text, b text); CREATE TYPE test2 AS (c test1, d test1); CREATE FUNCTION test3 () RETURNS test2 LANGUAGE 'plpgsql' AS $$ DECLARE result test2; BEGIN result := ROW (ROW ('1', '2'), ROW ('3', '4')); RETURN result; END; $$; SELECT * FROM test3(); generates the following error: ERROR: row not compatible with its own tupdesc CONTEXT: PL/pgSQL function "test3" line 5 at return I assume this is a bug, because the source code says: if (estate->retval == (Datum) NULL) /* should not happen */ elog(ERROR, "row not compatible with its own tupdesc"); [...] if (tup == NULL) /* should not happen */ elog(ERROR, "row not compatible with its own tupdesc"); ---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend |
| Thread Tools | |
| Display Modes | |
|
|