summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2009-04-08 22:29:30 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2009-04-08 22:29:30 +0000
commit4703250a766d72366fa511351e247ba74a5d43cd (patch)
tree01e107434c95994f4ca0047d58f0f35760c43b82 /src
parente0daf7fc3cc6489de2120f882ac2942f0c18ed82 (diff)
Remove psql's ancient hack that suppressed functions taking or returning
cstring from the output of \df. Now that the default behavior is to exclude all system functions, the de-cluttering rationale for this behavior seems pretty weak; and it was always quite confusing/unhelpful if you were actually looking for I/O functions. (Not to mention if you were looking for encoding converters or other cases that might take or return cstring.)
Diffstat (limited to 'src')
-rw-r--r--src/bin/psql/describe.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c
index df59999d200..83858f327d7 100644
--- a/src/bin/psql/describe.c
+++ b/src/bin/psql/describe.c
@@ -8,7 +8,7 @@
*
* Copyright (c) 2000-2009, PostgreSQL Global Development Group
*
- * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.207 2009/04/04 00:44:30 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/describe.c,v 1.208 2009/04/08 22:29:30 tgl Exp $
*/
#include "postgres_fe.h"
@@ -274,13 +274,7 @@ describeFunctions(const char *pattern, bool verbose, bool showSystem)
appendPQExpBuffer(&buf,
" LEFT JOIN pg_catalog.pg_language l ON l.oid = p.prolang\n");
- /*
- * we skip in/out funcs by excluding functions that take or return cstring
- */
- appendPQExpBuffer(&buf,
- "WHERE p.prorettype <> 'pg_catalog.cstring'::pg_catalog.regtype\n"
- " AND p.proargtypes[0] IS DISTINCT FROM 'pg_catalog.cstring'::pg_catalog.regtype\n"
- " AND NOT p.proisagg\n");
+ appendPQExpBuffer(&buf, "WHERE NOT p.proisagg\n");
if (!showSystem && !pattern)
appendPQExpBuffer(&buf, " AND n.nspname <> 'pg_catalog'\n"
@@ -643,7 +637,7 @@ objectDescription(const char *pattern, bool showSystem)
"n.nspname", "p.proname", NULL,
"pg_catalog.pg_function_is_visible(p.oid)");
- /* Function descriptions (except in/outs for datatypes) */
+ /* Function descriptions */
appendPQExpBuffer(&buf,
"UNION ALL\n"
" SELECT p.oid as oid, p.tableoid as tableoid,\n"
@@ -652,11 +646,7 @@ objectDescription(const char *pattern, bool showSystem)
" CAST('%s' AS pg_catalog.text) as object\n"
" FROM pg_catalog.pg_proc p\n"
" LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace\n"
-
- " WHERE p.prorettype <> 'pg_catalog.cstring'::pg_catalog.regtype\n"
- " AND (p.proargtypes[0] IS NULL\n"
- " OR p.proargtypes[0] <> 'pg_catalog.cstring'::pg_catalog.regtype)\n"
- " AND NOT p.proisagg\n",
+ " WHERE NOT p.proisagg\n",
gettext_noop("function"));
if (!showSystem && !pattern)