Document current_role.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 6 May 2017 18:19:47 +0000 (14:19 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 6 May 2017 18:19:47 +0000 (14:19 -0400)
This system function has been there a very long time, but somehow escaped
being listed in func.sgml.

Fabien Coelho and Tom Lane

Discussion: https://postgr.es/m/alpine.DEB.2.20.1705061027580.3896@lancre

doc/src/sgml/func.sgml

index f06d0a92c038d0ea54cd79508881c66d1871d782..629865701fb9a463031186c7a6a9c9ae5ccb8cea 100644 (file)
@@ -15735,6 +15735,12 @@ SELECT * FROM pg_ls_dir('.') WITH ORDINALITY AS t(ls,n);
        by the client (might contain more than one statement)</entry>
       </row>
 
+      <row>
+       <entry><literal><function>current_role</function></literal></entry>
+       <entry><type>name</type></entry>
+       <entry>equivalent to <function>current_user</function></entry>
+      </row>
+
       <row>
        <entry><literal><function>current_schema</function>[()]</literal></entry>
        <entry><type>name</type></entry>
@@ -15871,8 +15877,11 @@ SELECT * FROM pg_ls_dir('.') WITH ORDINALITY AS t(ls,n);
 
    <note>
     <para>
-     <function>current_catalog</function>, <function>current_schema</function>,
-     <function>current_user</function>, <function>session_user</function>,
+     <function>current_catalog</function>,
+     <function>current_role</function>,
+     <function>current_schema</function>,
+     <function>current_user</function>,
+     <function>session_user</function>,
      and <function>user</function> have special syntactic status
      in <acronym>SQL</acronym>: they must be called without trailing
      parentheses.  (In PostgreSQL, parentheses can optionally be used with
@@ -15892,6 +15901,10 @@ SELECT * FROM pg_ls_dir('.') WITH ORDINALITY AS t(ls,n);
     <primary>current_query</primary>
    </indexterm>
 
+   <indexterm>
+    <primary>current_role</primary>
+   </indexterm>
+
    <indexterm>
     <primary>current_schema</primary>
    </indexterm>
@@ -15943,6 +15956,11 @@ SELECT * FROM pg_ls_dir('.') WITH ORDINALITY AS t(ls,n);
     functions with the attribute <literal>SECURITY DEFINER</literal>.
     In Unix parlance, the session user is the <quote>real user</quote> and
     the current user is the <quote>effective user</quote>.
+    <function>current_role</function> and <function>user</function> are
+    synonyms for <function>current_user</function>.  (The SQL standard draws
+    a distinction between <function>current_role</function>
+    and <function>current_user</function>, but <productname>PostgreSQL</>
+    does not, since it unifies users and roles into a single kind of entity.)
    </para>
 
    <para>