public inbox for [email protected]help / color / mirror / Atom feed
issue with reading hostname 6+ messages / 4 participants [nested] [flat]
* issue with reading hostname @ 2024-04-22 20:13 Atul Kumar <[email protected]> 0 siblings, 3 replies; 6+ messages in thread From: Atul Kumar @ 2024-04-22 20:13 UTC (permalink / raw) To: pgsql-general <[email protected]> Hi, I have postgresql version 15 running on centos7. I have below query that reads hostname from /tmp directory: psql postgres -A -t -p 5432 -h /tmp/ -c 'SELECT pg_is_in_recovery();' so below are my questions: 1. Is the psql client reading the socket file that resides in the /tmp directory to fetch the hostname ? 2. I saw the socket file in /tmp and it is empty. Then how is the psql client still reading the socket file successfully for hostname ? this is my socket looks ( the size is 0 as the file is empty): srwxrwxrwx. 1 postgres postgres 0 Apr 22 12:47 .s.PGSQL.5432 Please help me clarify these doubts. Regards. ^ permalink raw reply [nested|flat] 6+ messages in thread
* Re: issue with reading hostname @ 2024-04-22 20:25 Adrian Klaver <[email protected]> parent: Atul Kumar <[email protected]> 2 siblings, 0 replies; 6+ messages in thread From: Adrian Klaver @ 2024-04-22 20:25 UTC (permalink / raw) To: Atul Kumar <[email protected]>; pgsql-general <[email protected]> On 4/22/24 13:13, Atul Kumar wrote: > Hi, > > I have postgresql version 15 running on centos7. > > I have below query that reads hostname from /tmp directory: > > psql postgres -A -t -p 5432 -h /tmp/ -c 'SELECT pg_is_in_recovery();' > > > so below are my questions: > > 1. Is the psql client reading the socket file that resides in the /tmp > directory to fetch the hostname ? > > 2. I saw the socket file in /tmp and it is empty. Then how is the psql > client still reading the socket file successfully for hostname ? > > > this is my socket looks ( the size is 0 as the file is empty): > > srwxrwxrwx. 1 postgres postgres 0 Apr 22 12:47 .s.PGSQL.5432 > > > Please help me clarify these doubts. https://www.postgresql.org/docs/current/libpq-connect.html#LIBPQ-PARAMKEYWORDS "host Name of host to connect to. If a host name looks like an absolute path name, it specifies Unix-domain communication rather than TCP/IP communication; the value is the name of the directory in which the socket file is stored. (On Unix, an absolute path name begins with a slash. On Windows, paths starting with drive letters are also recognized.) If the host name starts with @, it is taken as a Unix-domain socket in the abstract namespace (currently supported on Linux and Windows). The default behavior when host is not specified, or is empty, is to connect to a Unix-domain socket in /tmp (or whatever socket directory was specified when PostgreSQL was built). On Windows, the default is to connect to localhost. A comma-separated list of host names is also accepted, in which case each host name in the list is tried in order; an empty item in the list selects the default behavior as explained above. See Section 34.1.1.3 for details. " The simplistic explanation is that the socket is the "host". > > > > Regards. > > > > > > -- Adrian Klaver [email protected] ^ permalink raw reply [nested|flat] 6+ messages in thread
* Re: issue with reading hostname @ 2024-04-22 21:11 Ron Johnson <[email protected]> parent: Atul Kumar <[email protected]> 2 siblings, 1 reply; 6+ messages in thread From: Ron Johnson @ 2024-04-22 21:11 UTC (permalink / raw) To: pgsql-general On Mon, Apr 22, 2024 at 4:14 PM Atul Kumar <[email protected]> wrote: > Hi, > > I have postgresql version 15 running on centos7. > > I have below query that reads hostname from /tmp directory: > > psql postgres -A -t -p 5432 -h /tmp/ -c 'SELECT pg_is_in_recovery();' > If you installed from the PGDG repository (possibly also the CENTOS repos, but I'm not sure), then the domain socket also lives in : /var/run/postgresql * I find that more expressive than /tmp. * No need to specify the host when using sockets. * Using a socket name makes parameterizing the hostname easier in scripts. ^ permalink raw reply [nested|flat] 6+ messages in thread
* Re: issue with reading hostname @ 2024-04-22 21:37 Atul Kumar <[email protected]> parent: Ron Johnson <[email protected]> 0 siblings, 1 reply; 6+ messages in thread From: Atul Kumar @ 2024-04-22 21:37 UTC (permalink / raw) To: ; +Cc: pgsql-general Can we edit the socket to change the hostname in it ? Regards. On Tue, Apr 23, 2024 at 2:41 AM Ron Johnson <[email protected]> wrote: > On Mon, Apr 22, 2024 at 4:14 PM Atul Kumar <[email protected]> wrote: > >> Hi, >> >> I have postgresql version 15 running on centos7. >> >> I have below query that reads hostname from /tmp directory: >> >> psql postgres -A -t -p 5432 -h /tmp/ -c 'SELECT pg_is_in_recovery();' >> > > If you installed from the PGDG repository (possibly also the CENTOS repos, > but I'm not sure), then the domain socket also lives in : > /var/run/postgresql > > * I find that more expressive than /tmp. > * No need to specify the host when using sockets. > * Using a socket name makes parameterizing the hostname easier in scripts. > > > ^ permalink raw reply [nested|flat] 6+ messages in thread
* Re: issue with reading hostname @ 2024-04-22 21:44 Ron Johnson <[email protected]> parent: Atul Kumar <[email protected]> 0 siblings, 0 replies; 6+ messages in thread From: Ron Johnson @ 2024-04-22 21:44 UTC (permalink / raw) To: pgsql-general There's no hostname in a socket directory. Do you mean :"change the socket name from /tmp or /var/run/postgresql to something else?" If so, then https://www.postgresql.org/docs/16/runtime-config-connection.html mentions sockets. On Mon, Apr 22, 2024 at 5:37 PM Atul Kumar <[email protected]> wrote: > Can we edit the socket to change the hostname in it ? > > Regards. > > On Tue, Apr 23, 2024 at 2:41 AM Ron Johnson <[email protected]> > wrote: > >> On Mon, Apr 22, 2024 at 4:14 PM Atul Kumar <[email protected]> wrote: >> >>> Hi, >>> >>> I have postgresql version 15 running on centos7. >>> >>> I have below query that reads hostname from /tmp directory: >>> >>> psql postgres -A -t -p 5432 -h /tmp/ -c 'SELECT pg_is_in_recovery();' >>> >> >> If you installed from the PGDG repository (possibly also the CENTOS >> repos, but I'm not sure), then the domain socket also lives in : >> /var/run/postgresql >> >> * I find that more expressive than /tmp. >> * No need to specify the host when using sockets. >> * Using a socket name makes parameterizing the hostname easier in scripts. >> >> >> ^ permalink raw reply [nested|flat] 6+ messages in thread
* Re: issue with reading hostname @ 2024-04-22 21:54 David G. Johnston <[email protected]> parent: Atul Kumar <[email protected]> 2 siblings, 0 replies; 6+ messages in thread From: David G. Johnston @ 2024-04-22 21:54 UTC (permalink / raw) To: Atul Kumar <[email protected]>; +Cc: pgsql-general <[email protected]> On Mon, Apr 22, 2024 at 1:14 PM Atul Kumar <[email protected]> wrote: > > so below are my questions: > > 1. Is the psql client reading the socket file that resides in the /tmp > directory to fetch the hostname ? > > 2. I saw the socket file in /tmp and it is empty. Then how is the psql > client still reading the socket file successfully for hostname ? > > > Unix sockets are not a PostgreSQL-specific thing, they are an OS thing. You should be able to find information on them if you search but it isn't something our documentation is on the hook to teach. But, in many ways, it is just a file name (Unix philosophy, everything is a file) that programs can hook their standard input and standard output up to such that the standard output sent by one process is directed to the standard input of the other process. All on the fly, nothing gets persisted into the physical file. It's a tin-can-and-string solution to interprocess communication. David J. ^ permalink raw reply [nested|flat] 6+ messages in thread
end of thread, other threads:[~2024-04-22 21:54 UTC | newest] Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed) -- links below jump to the message on this page -- 2024-04-22 20:13 issue with reading hostname Atul Kumar <[email protected]> 2024-04-22 20:25 ` Adrian Klaver <[email protected]> 2024-04-22 21:11 ` Ron Johnson <[email protected]> 2024-04-22 21:37 ` Atul Kumar <[email protected]> 2024-04-22 21:44 ` Ron Johnson <[email protected]> 2024-04-22 21:54 ` David G. Johnston <[email protected]>
This inbox is served by agora; see mirroring instructions for how to clone and mirror all data and code used for this inbox