diff options
Diffstat (limited to 'doc/src')
-rw-r--r-- | doc/src/sgml/config.sgml | 24 | ||||
-rw-r--r-- | doc/src/sgml/libpq.sgml | 5 |
2 files changed, 27 insertions, 2 deletions
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml index 3795c570048..f810789ea82 100644 --- a/doc/src/sgml/config.sgml +++ b/doc/src/sgml/config.sgml @@ -749,6 +749,21 @@ include_dir 'conf.d' An empty value specifies not listening on any Unix-domain sockets, in which case only TCP/IP sockets can be used to connect to the server. + </para> + + <para> + A value that starts with <literal>@</literal> specifies that a + Unix-domain socket in the abstract namespace should be created + (currently supported on Linux and Windows). In that case, this value + does not specify a <quote>directory</quote> but a prefix from which + the actual socket name is computed in the same manner as for the + file-system namespace. While the abstract socket name prefix can be + chosen freely, since it is not a file-system location, the convention + is to nonetheless use file-system-like values such as + <literal>@/tmp</literal>. + </para> + + <para> The default value is normally <filename>/tmp</filename>, but that can be changed at build time. On Windows, the default is empty, which means no Unix-domain socket is @@ -763,6 +778,7 @@ include_dir 'conf.d' named <literal>.s.PGSQL.<replaceable>nnnn</replaceable>.lock</literal> will be created in each of the <varname>unix_socket_directories</varname> directories. Neither file should ever be removed manually. + For sockets in the abstract namespace, no lock file is created. </para> </listitem> </varlistentry> @@ -787,7 +803,8 @@ include_dir 'conf.d' <para> This parameter is not supported on Windows. Any setting will be - ignored. + ignored. Also, sockets in the abstract namespace have no file owner, + so this setting is also ignored in that case. </para> </listitem> </varlistentry> @@ -834,6 +851,11 @@ include_dir 'conf.d' similar effect by pointing <varname>unix_socket_directories</varname> to a directory having search permission limited to the desired audience. </para> + + <para> + Sockets in the abstract namespace have no file permissions, so this + setting is also ignored in that case. + </para> </listitem> </varlistentry> diff --git a/doc/src/sgml/libpq.sgml b/doc/src/sgml/libpq.sgml index 9d4b6ab4a89..06bd412044c 100644 --- a/doc/src/sgml/libpq.sgml +++ b/doc/src/sgml/libpq.sgml @@ -1031,7 +1031,10 @@ postgresql://%2Fvar%2Flib%2Fpostgresql/dbname 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.) The default behavior when <literal>host</literal> is not + recognized.) If the host name starts with <literal>@</literal>, it is + taken as a Unix-domain socket in the abstract namespace (currently + supported on Linux and Windows). + The default behavior when <literal>host</literal> is not specified, or is empty, is to connect to a Unix-domain socket<indexterm><primary>Unix domain socket</primary></indexterm> in <filename>/tmp</filename> (or whatever socket directory was specified |