From: Peter Eisentraut <peter@eisentraut.org>
To: Erki Eessaar <erki.eessaar@taltech.ee>
To: pgsql-docs@lists.postgresql.org <pgsql-docs@lists.postgresql.org>
Subject: Re: INFORMATION_SCHEMA.routine_column_usage
Date: Wed, 29 Nov 2023 15:01:00 +0100
Message-ID: <28163ed6-e3aa-49b3-8053-02f6c145f02f@eisentraut.org> (raw)
In-Reply-To: <AM9PR01MB8268EC7B696F9FE346CA5B93FEB8A@AM9PR01MB8268.eurprd01.prod.exchangelabs.com>
References: <AM9PR01MB8268EC7B696F9FE346CA5B93FEB8A@AM9PR01MB8268.eurprd01.prod.exchangelabs.com>
> Here
> https://www.postgresql.org/docs/current/infoschema-routine-column-usage.html <https://www.postgresql.org/docs/current/infoschema-routine-column-usage.html;
>
> it is stated that "The view |routine_column_usage| is meant to identify
> all columns that are used by a function or procedure. This information
> is currently not tracked by PostgreSQL."
>
> However, this claim is incorrect because the view provides information
> about the column usage of SQL functions that have SQL-standard function
> body.
Correct, the documentation was not updated when this was added. A few
other views are similarly affected. How about this attached patch.
From dfe65ace27a5b2e11511e5d929eea356c8ca89e5 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Wed, 29 Nov 2023 14:56:41 +0100
Subject: [PATCH] doc: Update info on information schema usage tables
Commit f40c6969d0 added the information schema usage tables but added
documentation that they did not fully work yet. Commit e717a9a18b
then added SQL-standard function bodies, which made the information
schema views fully functional, but it neglected to update the
documentation. This is now done here.
Reported-by: Erki Eessaar <erki.eessaar@taltech.ee>
Discussion: https://www.postgresql.org/message-id/flat/AM9PR01MB8268EC7B696F9FE346CA5B93FEB8A%40AM9PR01MB8268.eu...
TODO: backpatch 14+
---
doc/src/sgml/information_schema.sgml | 30 +++++++++++++++-------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgmlindex 9c39e9aab5..0ca7d5a9e0 100644--- a/doc/src/sgml/information_schema.sgml+++ b/doc/src/sgml/information_schema.sgml@@ -4846,9 +4846,11 @@ <title><structname>role_usage_grants</structname> Columns</title>
<title><literal>routine_column_usage</literal></title>
<para>
- The view <literal>routine_column_usage</literal> is meant to identify all- columns that are used by a function or procedure. This information is- currently not tracked by <productname>PostgreSQL</productname>.+ The view <literal>routine_column_usage</literal> identifies all columns+ that are used by a function or procedure, either in the SQL body or in+ parameter default expressions. (This only works for unquoted SQL bodies,+ not quoted bodies or functions in other languages.) A column is only+ included if its table is owned by a currently enabled role.
</para>
<table>
@@ -5085,12 +5087,12 @@ <title><structname>routine_privileges</structname> Columns</title>
<title><literal>routine_routine_usage</literal></title>
<para>
- The view <literal>routine_routine_usage</literal> is meant to identify all- functions or procedures that are used by another (or the same) function or- procedure, either in the body or in parameter default expressions.- Currently, only functions used in parameter default expressions are- tracked. An entry is included here only if the used function is owned by a- currently enabled role. (There is no such restriction on the using+ The view <literal>routine_routine_usage</literal> identifies all functions+ or procedures that are used by another (or the same) function or procedure,+ either in the SQL body or in parameter default expressions. (This only+ works for unquoted SQL bodies, not quoted bodies or functions in other+ languages.) An entry is included here only if the used function is owned+ by a currently enabled role. (There is no such restriction on the using
function.)
</para>
@@ -5184,11 +5186,11 @@ <title><literal>routine_routine_usage</literal> Columns</title>
<title><literal>routine_sequence_usage</literal></title>
<para>
- The view <literal>routine_sequence_usage</literal> is meant to identify all- sequences that are used by a function or procedure, either in the body or- in parameter default expressions. Currently, only sequences used in- parameter default expressions are tracked. A sequence is only included if- that sequence is owned by a currently enabled role.+ The view <literal>routine_sequence_usage</literal> identifies all sequences+ that are used by a function or procedure, either in the SQL body or in+ parameter default expressions. (This only works for unquoted SQL bodies,+ not quoted bodies or functions in other languages.) A sequence is only+ included if that sequence is owned by a currently enabled role.
</para>
<table>
--
2.43.0
Attachments:
[text/plain] 0001-doc-Update-info-on-information-schema-usage-tables.patch (3.8K, ../28163ed6-e3aa-49b3-8053-02f6c145f02f@eisentraut.org/2-0001-doc-Update-info-on-information-schema-usage-tables.patch)
download | inline diff:
From dfe65ace27a5b2e11511e5d929eea356c8ca89e5 Mon Sep 17 00:00:00 2001
From: Peter Eisentraut <peter@eisentraut.org>
Date: Wed, 29 Nov 2023 14:56:41 +0100
Subject: [PATCH] doc: Update info on information schema usage tables
Commit f40c6969d0 added the information schema usage tables but added
documentation that they did not fully work yet. Commit e717a9a18b
then added SQL-standard function bodies, which made the information
schema views fully functional, but it neglected to update the
documentation. This is now done here.
Reported-by: Erki Eessaar <erki.eessaar@taltech.ee>
Discussion: https://www.postgresql.org/message-id/flat/AM9PR01MB8268EC7B696F9FE346CA5B93FEB8A%40AM9PR01MB8268.eurprd01.prod.exchangelabs.com
TODO: backpatch 14+
---
doc/src/sgml/information_schema.sgml | 30 +++++++++++++++-------------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/doc/src/sgml/information_schema.sgml b/doc/src/sgml/information_schema.sgmlindex 9c39e9aab5..0ca7d5a9e0 100644--- a/doc/src/sgml/information_schema.sgml+++ b/doc/src/sgml/information_schema.sgml@@ -4846,9 +4846,11 @@ <title><structname>role_usage_grants</structname> Columns</title>
<title><literal>routine_column_usage</literal></title>
<para>
- The view <literal>routine_column_usage</literal> is meant to identify all- columns that are used by a function or procedure. This information is- currently not tracked by <productname>PostgreSQL</productname>.+ The view <literal>routine_column_usage</literal> identifies all columns+ that are used by a function or procedure, either in the SQL body or in+ parameter default expressions. (This only works for unquoted SQL bodies,+ not quoted bodies or functions in other languages.) A column is only+ included if its table is owned by a currently enabled role.
</para>
<table>
@@ -5085,12 +5087,12 @@ <title><structname>routine_privileges</structname> Columns</title>
<title><literal>routine_routine_usage</literal></title>
<para>
- The view <literal>routine_routine_usage</literal> is meant to identify all- functions or procedures that are used by another (or the same) function or- procedure, either in the body or in parameter default expressions.- Currently, only functions used in parameter default expressions are- tracked. An entry is included here only if the used function is owned by a- currently enabled role. (There is no such restriction on the using+ The view <literal>routine_routine_usage</literal> identifies all functions+ or procedures that are used by another (or the same) function or procedure,+ either in the SQL body or in parameter default expressions. (This only+ works for unquoted SQL bodies, not quoted bodies or functions in other+ languages.) An entry is included here only if the used function is owned+ by a currently enabled role. (There is no such restriction on the using
function.)
</para>
@@ -5184,11 +5186,11 @@ <title><literal>routine_routine_usage</literal> Columns</title>
<title><literal>routine_sequence_usage</literal></title>
<para>
- The view <literal>routine_sequence_usage</literal> is meant to identify all- sequences that are used by a function or procedure, either in the body or- in parameter default expressions. Currently, only sequences used in- parameter default expressions are tracked. A sequence is only included if- that sequence is owned by a currently enabled role.+ The view <literal>routine_sequence_usage</literal> identifies all sequences+ that are used by a function or procedure, either in the SQL body or in+ parameter default expressions. (This only works for unquoted SQL bodies,+ not quoted bodies or functions in other languages.) A sequence is only+ included if that sequence is owned by a currently enabled role.
</para>
<table>
--
2.43.0
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-docs@postgresql.org
Cc: peter@eisentraut.org, erki.eessaar@taltech.ee, pgsql-docs@lists.postgresql.org
Subject: Re: INFORMATION_SCHEMA.routine_column_usage
In-Reply-To: <28163ed6-e3aa-49b3-8053-02f6c145f02f@eisentraut.org>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox