Re: Support custom socket directory in pg_upgrade
Thomas Munro <thomas.munro@enterprisedb.com>
From: Thomas Munro <thomas.munro@enterprisedb.com>
To: Daniel Gustafsson <daniel@yesql.se>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2018-11-06T08:19:12Z
Lists: pgsql-hackers
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Add a --socketdir option to pg_upgrade.
- 2d34ad843031 12.0 landed
On Wed, Oct 10, 2018 at 9:27 AM Daniel Gustafsson <daniel@yesql.se> wrote: > > On 9 Oct 2018, at 16:22, Tom Lane <tgl@sss.pgh.pa.us> wrote: > > Daniel Gustafsson <daniel@yesql.se> writes: > >> Having hit the maximum socketdir length error a number of times in pg_upgrade, > >> especially when running tests in a deep directory hierarchy, I figured it was > >> time to see if anyone else has had the same problem? The attached patch is > >> what I run with locally to avoid the issue, it adds a --socketdir=PATH option > >> to pg_upgrade which overrides the default use of CWD. Is that something that > >> could be considered? > > > > I think you could simplify matters if you installed the CWD default value > > during option processing. > > The attached v2 tries to make the socketdir more like the other configurable > directories in pg_upgrade (adding an envvar for it etc). Is that more in line > with what you were suggesting? make -C src/bin/pg_upgrade check passes with > this, both unmodified and with a -s in the test script to override it. Also > fixed incorrect syntax in the docs part from v1. I think PGSOCKETDIR should be mentioned in the documentation like the other environment variables, and also I'm wondering if it actually works: you set it to the current working directory first, then parse the command line option if present, and then read the env var only if not already set: but it's always going to be, isn't it? Perhaps you should use getcwd() only if all else fails? -- Thomas Munro http://www.enterprisedb.com