aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/src/sgml/ref/psql-ref.sgml2
-rw-r--r--src/bin/psql/describe.c8
2 files changed, 7 insertions, 3 deletions
diff --git a/doc/src/sgml/ref/psql-ref.sgml b/doc/src/sgml/ref/psql-ref.sgml
index 4c99cd9951d..4c87d8ad7fe 100644
--- a/doc/src/sgml/ref/psql-ref.sgml
+++ b/doc/src/sgml/ref/psql-ref.sgml
@@ -1188,7 +1188,7 @@ testdb=>
class="parameter">pattern</replaceable> is specified, only
functions whose names match the pattern are shown. If the
form <literal>\df+</literal> is used, additional information
- about each function, including volatility, language, source
+ about each function, including security, volatility, language, source
code and description, is shown. By default, only user-created
objects are shown; supply a pattern or the <literal>S</literal>
modifier to include system objects.
diff --git a/src/bin/psql/describe.c b/src/bin/psql/describe.c
index 87174cc9197..8064a3d7024 100644
--- a/src/bin/psql/describe.c
+++ b/src/bin/psql/describe.c
@@ -256,7 +256,7 @@ describeFunctions(const char *functypes, const char *pattern, bool verbose, bool
" WHEN p.proiswindow THEN '%s'\n"
" WHEN p.prorettype = 'pg_catalog.trigger'::pg_catalog.regtype THEN '%s'\n"
" ELSE '%s'\n"
- "END as \"%s\"",
+ " END as \"%s\"",
gettext_noop("Result data type"),
gettext_noop("Argument data types"),
/* translator: "agg" is short for "aggregate" */
@@ -330,15 +330,19 @@ describeFunctions(const char *functypes, const char *pattern, bool verbose, bool
if (verbose)
appendPQExpBuffer(&buf,
+ ",\n CASE WHEN prosecdef THEN '%s' ELSE '%s' END AS \"%s\""
",\n CASE\n"
" WHEN p.provolatile = 'i' THEN '%s'\n"
" WHEN p.provolatile = 's' THEN '%s'\n"
" WHEN p.provolatile = 'v' THEN '%s'\n"
- "END as \"%s\""
+ " END as \"%s\""
",\n pg_catalog.pg_get_userbyid(p.proowner) as \"%s\",\n"
" l.lanname as \"%s\",\n"
" p.prosrc as \"%s\",\n"
" pg_catalog.obj_description(p.oid, 'pg_proc') as \"%s\"",
+ gettext_noop("definer"),
+ gettext_noop("invoker"),
+ gettext_noop("Security"),
gettext_noop("immutable"),
gettext_noop("stable"),
gettext_noop("volatile"),