Thread: 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%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 > > ---------------------------(end of broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/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 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%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 > > > > ---------------------------(end of broadcast)--------------------------- > > TIP 3: Have you checked our extensive FAQ? > > > > http://www.postgresql.org/docs/faq > > -- > Bruce Momjian bruce@momjian.us > EnterpriseDB http://www.enterprisedb.com > > + If your life is a hard drive, Christ can be your backup. + >