Michal Szymanski <dyrex(at)poczta(dot)onet(dot)pl> writes:
> CREATE OR REPLACE FUNCTION buggy_procedure() RETURNS TABLE (id INT8,
> test VARCHAR)
> AS $$
> BEGIN
> -- @todo hide password
> RETURN QUERY
> SELECT id ,test
> FROM bug_table
> ;
> END;
> $$
> LANGUAGE plpgsql STRICT SECURITY DEFINER;
Don't use column names in your functions that are the same as variable
or parameter names of the function. This is working basically as if
you'd written "SELECT null,null", because the output parameters are
still null when the RETURN QUERY is executed.
regards, tom lane