BUG #2759: \df doesn't show functions with no args
The following bug has been logged online:
Bug reference: 2759
Logged by: Leon Miller-Out
Email address: pg_bugs@leonout.com
PostgreSQL version: 8.1.5
Operating system: CentOS 4.4 x64
Description: \df doesn't show functions with no args
Details:
\df doesn't show functions with no arguments.
This is a documented problem, and appears to have been fixed in April 2005,
so I'm not sure why it's showing up here.
See:
http://groups.google.com/group/pgsql.committers/browse_frm/thread/d28052b7da
9424b0/e6413772fc41324d%23e6413772fc41324d
Running pgsql -E, then \dv outputs:
SELECT n.nspname as "Schema",
p.proname as "Name",
CASE WHEN p.proretset THEN 'setof ' ELSE '' END ||
pg_catalog.format_type(p.prorettype, NULL) as "Result data type",
pg_catalog.oidvectortypes(p.proargtypes) as "Argument data types"
FROM pg_catalog.pg_proc p
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE p.prorettype <> 'pg_catalog.cstring'::pg_catalog.regtype
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
AND NOT p.proisagg
AND pg_catalog.pg_function_is_visible(p.oid)
ORDER BY 1, 2, 3, 4;
The line
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
Needs to be either
AND (p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
OR p.proargtypes[0] IS NULL)
or gone completely. See thread at
http://archives.postgresql.org/pgsql-hackers/2005-03/msg01046.php
I am wondering if you are using an old psql with your 8.1.X server.
I see in 8.2.X this output from psql \df:
pg_catalog | now | timestamp with time zone |
and I see similar code in 8.1.X. Do you see "now" showing up?
---------------------------------------------------------------------------
Leon Miller-Out wrote:
The following bug has been logged online:
Bug reference: 2759
Logged by: Leon Miller-Out
Email address: pg_bugs@leonout.com
PostgreSQL version: 8.1.5
Operating system: CentOS 4.4 x64
Description: \df doesn't show functions with no args
Details:\df doesn't show functions with no arguments.
This is a documented problem, and appears to have been fixed in April 2005,
so I'm not sure why it's showing up here.See:
http://groups.google.com/group/pgsql.committers/browse_frm/thread/d28052b7da
9424b0/e6413772fc41324d%23e6413772fc41324dRunning pgsql -E, then \dv outputs:
SELECT n.nspname as "Schema",
p.proname as "Name",
CASE WHEN p.proretset THEN 'setof ' ELSE '' END ||
pg_catalog.format_type(p.prorettype, NULL) as "Result data type",
pg_catalog.oidvectortypes(p.proargtypes) as "Argument data types"
FROM pg_catalog.pg_proc p
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE p.prorettype <> 'pg_catalog.cstring'::pg_catalog.regtype
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
AND NOT p.proisagg
AND pg_catalog.pg_function_is_visible(p.oid)
ORDER BY 1, 2, 3, 4;The line
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
Needs to be either
AND (p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
OR p.proargtypes[0] IS NULL)or gone completely. See thread at
http://archives.postgresql.org/pgsql-hackers/2005-03/msg01046.php---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?
--
Bruce Momjian bruce@momjian.us
EnterpriseDB http://www.enterprisedb.com
+ If your life is a hard drive, Christ can be your backup. +
Bruce, you're right... I was using an old client. I wasn't aware that
the client translated the \d commands into SQL. Thanks for clearing
this up!
Leon
Show quoted text
On 11/20/06, Bruce Momjian <bruce@momjian.us> wrote:
I am wondering if you are using an old psql with your 8.1.X server.
I see in 8.2.X this output from psql \df:pg_catalog | now | timestamp with time zone |
and I see similar code in 8.1.X. Do you see "now" showing up?
---------------------------------------------------------------------------
Leon Miller-Out wrote:
The following bug has been logged online:
Bug reference: 2759
Logged by: Leon Miller-Out
Email address: pg_bugs@leonout.com
PostgreSQL version: 8.1.5
Operating system: CentOS 4.4 x64
Description: \df doesn't show functions with no args
Details:\df doesn't show functions with no arguments.
This is a documented problem, and appears to have been fixed in April 2005,
so I'm not sure why it's showing up here.See:
http://groups.google.com/group/pgsql.committers/browse_frm/thread/d28052b7da
9424b0/e6413772fc41324d%23e6413772fc41324dRunning pgsql -E, then \dv outputs:
SELECT n.nspname as "Schema",
p.proname as "Name",
CASE WHEN p.proretset THEN 'setof ' ELSE '' END ||
pg_catalog.format_type(p.prorettype, NULL) as "Result data type",
pg_catalog.oidvectortypes(p.proargtypes) as "Argument data types"
FROM pg_catalog.pg_proc p
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE p.prorettype <> 'pg_catalog.cstring'::pg_catalog.regtype
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
AND NOT p.proisagg
AND pg_catalog.pg_function_is_visible(p.oid)
ORDER BY 1, 2, 3, 4;The line
AND p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
Needs to be either
AND (p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype
OR p.proargtypes[0] IS NULL)or gone completely. See thread at
http://archives.postgresql.org/pgsql-hackers/2005-03/msg01046.php---------------------------(end of broadcast)---------------------------
TIP 3: Have you checked our extensive FAQ?--
Bruce Momjian bruce@momjian.us
EnterpriseDB http://www.enterprisedb.com+ If your life is a hard drive, Christ can be your backup. +