On Wed, Apr 5, 2023 at 11:34 AM Pavel Stehule <pavel.steh...@gmail.com> wrote:
> If the GUC_REPORT should not  be used, then only one possibility is enhancing 
> the protocol, about the possibility to read some predefined server's features 
> from the client.
> It can be much cheaper than SQL query, and it can be used when the current 
> transaction is aborted. I can imagine a possibility to read server time or a 
> server session role from a prompt processing routine.
>
> But for this specific case, you need to cache the role name somewhere. You 
> can simply get oid everytime, but for role name you need to access to system 
> catalogue, and it is not possible in aborted transactions. So at the end, you 
> probably should read "role" GUC.
>
> Can this design be  acceptable?

I don't think we want to add a dedicated protocol message that says
"send me the role GUC right now". I mean, we could, but being able to
tell the GUC mechanism "please send me the role GUC after every
command" sounds a lot easier to use.

-- 
Robert Haas
EDB: http://www.enterprisedb.com


Reply via email to