PG Bug reporting form <noreply@postgresql.org> writes:
> When I login to a server
> sudo -u postgres -h "nnn.nnn.nnn.nnn" -p nnnn -d postgres psql
> and execute command
> CREATE EXTENSION IF NOT EXISTS postgres_fdw;
> it runs OK, extension created and file postgres_fdw.control found in the
> folder
> "/usr/local/Cellar/postgresql@12/12.11/share/postgresql@12/extension/"
> But when I login to the same server but to the different database and as a
> different user
> sudo -u myuser -h "nnn.nnn.nnn.nnn" -p nnnn -d mydb psql
> and try execute the same command
> CREATE EXTENSION IF NOT EXISTS postgres_fdw;
> I'm getting ERROR: could not open extension control file
> "/usr/pgsql-12/share/extension/postgres_fdw.control": No such file or
> directory
I find it *extremely* implausible that those are actually the same
server, because the path to the extension directory isn't configurable;
it's pretty much wired in at build time. So I think you've managed to
put two separate PG installations on that machine. One of them looks to
be following HomeBrew directory conventions, while /usr/pgsql-12/ is sort
of like what Debian does and not at all like any macOS packager I know.
Are you really sure you're connecting to the same machine in both
examples? "SELECT version();" might be informative, also
"SHOW config_file;".
regards, tom lane