Re: Can we avoid chdir'ing in resolve_symlinks() ? - Mailing list pgsql-hackers

From Andrew Dunstan
Subject Re: Can we avoid chdir'ing in resolve_symlinks() ?
Date
Msg-id c3f9468b-1cb6-2dc2-724b-203c184be747@dunslane.net
Whole thread Raw
In response to Re: Can we avoid chdir'ing in resolve_symlinks() ?  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: Can we avoid chdir'ing in resolve_symlinks() ?
List pgsql-hackers
On 2022-09-12 Mo 16:07, Tom Lane wrote:
> Peter Eisentraut <peter.eisentraut@enterprisedb.com> writes:
>> On 12.09.22 17:33, Tom Lane wrote:
>>> Are you proposing we give up the support for relocatable installations?
>>> I'm not here to defend that feature, but I bet somebody will.  (And
>>> doesn't "make check" depend on it?)
>> I'm complaining specifically about the resolving of symlinks.  Why does
>> $ /usr/local/opt/postgresql@13/bin/pg_config --bindir
>> print
>> /usr/local/Cellar/postgresql@13/13.8/bin
>> when it clearly should print
>> /usr/local/opt/postgresql@13/bin
> I'm not sure about your setup there, but if you mean that
> /usr/local/opt/postgresql@13/bin is a symlink reading more or less
> "./13.8/bin", I doubt that failing to canonicalize that is a good idea.
> The point of finding the bindir is mainly to be able to navigate to its
> sibling directories such as lib/, etc/, share/.  There's no certainty
> that a symlink leading to the bin directory will have sibling symlinks
> to those other directories.
>
>             


I think the discussion here is a bit tangential to the original topic.

The point you make is reasonable, but it seems a bit more likely that in
the case Peter cites the symlink is one level higher in the tree, in
which case there's probably little value in resolving the symlink. Maybe
we could compromise and check if a path exists and only resolve symlinks
if it does not?


cheers


andrew


--
Andrew Dunstan
EDB: https://www.enterprisedb.com




pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: Error "initial slot snapshot too large" in create replication slot
Next
From: David Rowley
Date:
Subject: Re: Fix possible bogus array out of bonds (src/backend/access/brin/brin_minmax_multi.c)