The following bug has been logged online: Bug reference: 5314 Logged by: Oleg Email address: sero...@gmail.com PostgreSQL version: 8.3/8.4 Operating system: any Description: Error in nested composite types in plpgsql. Details:
Here is it reproduce code: It works only, when procedure is plpgsql, with sql works fine. ROLLBACK; BEGIN; CREATE TABLE bug_level_tree( field BIGINT ); CREATE TABLE bug_level_two( field bug_level_tree ); CREATE TABLE bug_level_one( id BIGINT, field bug_level_two ); CREATE FUNCTION bug_procedure(in_row bug_level_one) RETURNS text AS $$ BEGIN -- void SELECT 1/0; END; $$ LANGUAGE plpgsql; -- All okey SELECT '(1,)'::bug_level_one; -- Throws error SELECT bug_procedure('(1,)'); -- ERROR: cannot assign non-composite value to a row variable CONTEXT: PL/pgSQL function "bug_procedure" while storing call arguments into local variables -- Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-bugs