| From: | Peter Eisentraut <peter(at)eisentraut(dot)org> |
|---|---|
| To: | pgsql-committers(at)lists(dot)postgresql(dot)org |
| Subject: | pgsql: Enable Unix-domain sockets support on Windows |
| Date: | 2020-03-28 14:06:59 |
| Message-ID: | [email protected] |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-committers pgsql-hackers |
Enable Unix-domain sockets support on Windows
As of Windows 10 version 1803, Unix-domain sockets are supported on
Windows. But it's not automatically detected by configure because it
looks for struct sockaddr_un and Windows doesn't define that. So we
just make our own definition on Windows and override the configure
result.
Set DEFAULT_PGSOCKET_DIR to empty on Windows so by default no
Unix-domain socket is used, because there is no good standard
location.
In pg_upgrade, we have to do some extra tweaking to preserve the
existing behavior of not using Unix-domain sockets on Windows. Adding
support would be desirable, but it needs further work, in particular a
way to select whether to use Unix-domain sockets from the command-line
or with a run-time test.
The pg_upgrade test script needs a fix. The previous code passed
"localhost" to postgres -k, which only happened to work because
Windows used to ignore the -k argument value altogether. We instead
need to pass an empty string to get the desired effect.
The test suites will continue to not use Unix-domain sockets on
Windows. This requires a small tweak in pg_regress.c. The TAP tests
don't need to be changed because they decide by the operating system
rather than HAVE_UNIX_SOCKETS.
Reviewed-by: Andrew Dunstan <andrew(dot)dunstan(at)2ndquadrant(dot)com>
Discussion: https://www.postgresql.org/message-id/flat/54bde68c-d134-4eb8-5bd3-8af33b72a010(at)2ndquadrant(dot)com
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/8f3ec75de4060d86176ad4ac998eeb87a39748c2
Modified Files
--------------
config/c-library.m4 | 5 +++--
configure | 5 ++++-
src/bin/pg_upgrade/option.c | 4 ++--
src/bin/pg_upgrade/server.c | 2 +-
src/bin/pg_upgrade/test.sh | 11 ++++++-----
src/include/c.h | 4 ++++
src/include/pg_config.h.in | 6 +++---
src/include/pg_config_manual.h | 15 ++++++++-------
src/include/port/win32.h | 11 +++++++++++
src/test/regress/pg_regress.c | 10 +++++++---
src/tools/msvc/Solution.pm | 2 +-
11 files changed, 50 insertions(+), 25 deletions(-)
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Dean Rasheed | 2020-03-28 14:42:24 | pgsql: Improve the performance and accuracy of numeric sqrt() and ln(). |
| Previous Message | Dean Rasheed | 2020-03-28 12:51:33 | pgsql: Prevent functional dependency estimates from exceeding column es |
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Pavel Stehule | 2020-03-28 14:09:34 | Re: proposal \gcsv |
| Previous Message | Daniel Verite | 2020-03-28 14:06:05 | Re: proposal \gcsv |