Thread: libpq "service" parameter not documented as not allowed inside a pg_service file
libpq "service" parameter not documented as not allowed inside a pg_service file
From
David Johnston
Date:
While the fact that you cannot do:
[service_template]
host=xxx.xxx.xxx.xxx
[service_db1]
dbname=db1
service=service_template
seems obvious there is nothing in the documentation that says this is prohibited; and attempting a simple alias entry:
[realentry]
user=not_system_user
dbname=whatever
[aliasentry]
service=realentry
psql "service=aliasentry"
results in the error:
FATAL: role "system-user" does not exist
Version 9.3
SIDE NOTE: between the "FATAL:" and the word "role" are two spaces instead of what probably should be one.
Anyway,
says that "[...] and the parameters are connection parameters; [...]
and one of those parameters is "service"
I would suggest:
"connection parameters; see Section 31.1.2 for a list but note that you may not include the "service" parameter within the pg_service file (i.e., aliases are not allowed).
Thoughts?
David J.
P.S.
Any chance on actually making this work? The recent comment about "\c service=name" not working properly seems to fall into the same category so maybe fix them both at the same time - though the other issue is probably more of a bug while this is a feature request (unless the interplay is non-trivial)...
I'm going to link to this post and add a comment to that thread.
Re: libpq "service" parameter not documented as not allowed inside a pg_service file
From
Bruce Momjian
Date:
On Fri, Dec 19, 2014 at 06:52:42PM -0700, David Johnston wrote: > While the fact that you cannot do: > > [service_template] > host=xxx.xxx.xxx.xxx > > [service_db1] > dbname=db1 > service=service_template > > seems obvious there is nothing in the documentation that says this is > prohibited; and attempting a simple alias entry: I have developed the attached patch to warn users that nesting of service entries is not supported. I prefer code warnings over documentation because the user gets the warning as soon as they try something, rather than having to hunt in the documentation. I don't think this issue has come up enough to warrant a doc mention too though. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +
Attachment
Re: libpq "service" parameter not documented as not allowed inside a pg_service file
From
Bruce Momjian
Date:
On Wed, Apr 1, 2015 at 04:52:48PM -0400, Bruce Momjian wrote: > On Fri, Dec 19, 2014 at 06:52:42PM -0700, David Johnston wrote: > > While the fact that you cannot do: > > > > [service_template] > > host=xxx.xxx.xxx.xxx > > > > [service_db1] > > dbname=db1 > > service=service_template > > > > seems obvious there is nothing in the documentation that says this is > > prohibited; and attempting a simple alias entry: > > I have developed the attached patch to warn users that nesting of > service entries is not supported. I prefer code warnings over > documentation because the user gets the warning as soon as they try > something, rather than having to hunt in the documentation. I don't > think this issue has come up enough to warrant a doc mention too though. Patch applied. Thanks for the report. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://enterprisedb.com + Everyone has their own god. +