Hi,
Create a new function that uses a TABLE return type definition:
CREATE OR REPLACE FUNCTION testing(IN p_test bigint) RETURNS TABLE (id int) AS
$BODY$ SELECT 1 AS id
$BODY$ LANGUAGE sql STABLE;
Expected Results
The return type retains the ID column name and continues to use a
TABLE for the result.
Actual Results
When viewed in pgAdmin3, it becomes:
CREATE OR REPLACE FUNCTION testing(IN p_test bigint) RETURNS SETOF integer AS
$BODY$ SELECT 1 AS id
$BODY$ LANGUAGE sql STABLE COST 100 ROWS 1000;
The TABLE return type definition has been replaced.
This has no immediate effect on the database, but any subsequent edits
to the function through pgAdmin could catch developers unaware.