Re: About the function current_user

From: Daniel Gustafsson <daniel(at)yesql(dot)se>
To: Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com>
Cc: Xiong He <iihero(at)qq(dot)com>, pgsql-bugs <pgsql-bugs(at)lists(dot)postgresql(dot)org>
Subject: Re: About the function current_user
Date: 2023-03-20 08:16:52
Message-ID: 89A42BDF-D1C2-4D28-9970-54EA3EF60815@yesql.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

> On 20 Mar 2023, at 08:05, Pavel Stehule <pavel(dot)stehule(at)gmail(dot)com> wrote:
> po 20. 3. 2023 v 8:01 odesílatel Xiong He <iihero(at)qq(dot)com <mailto:iihero(at)qq(dot)com>> napsal:

> why current_user() is not recognized?
>
> this is not real function - it is pseudo constant
>
> The real function in postgres has a record in the pg_proc table.

The syntax of current_user and current_role are mandated by the SQL
specification, we have this note in the documentation:

"current_catalog, current_role, current_schema, current_user,
session_user, and user have special syntactic status in SQL: they must
be called without trailing parentheses. In PostgreSQL, parentheses can
optionally be used with current_schema, but not with the others."

Given that current_schema and other current_xx functions accept parenthesis
it's easy to understand the confusion though.

--
Daniel Gustafsson

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message John Naylor 2023-03-20 08:49:55 Re: About the function current_user
Previous Message Pavel Stehule 2023-03-20 07:05:45 Re: About the function current_user