On Monday, September 8, 2025, Matheus Alcantara <
matheusssilv97@gmail.com> wrote:
On Fri Sep 5, 2025 at 11:22 AM -03, Pierrick wrote:
> If the same extension is in two different paths mentioned in
> extension_control_path,
> it is impossible to install the version of the last one.
>
> postgres=# show extension_control_path ;
> extension_control_path
> -----------------------------------------------------------------------------
> $system:/extensions/meilleureextension/share:/extensions/monextension/share
> (1 row)
>
> postgres=# select * from pg_available_extensions where name like '%mon%';
> name | default_version | installed_version | comment
> --------------+-----------------+-------------------+---------------
> monextension | 2.0 | | Meilleure
> monextension | 1.0 | | Mon extension
>
On this step it will search the .control
file on paths at extension_control_path in order and it will use the
first one that it finds and based on the .control file found it will
install the extension using the version specified on the command.
Then pg_available_extensions seems broken - it lists extensions as available that are not accessible to the user due to this policy. Maybe we need to add something indicating that certain rows are hidden behind the present path setting which would need to be changed if one wishes to install them. Also seems like the extension location should be part of the output too.
David J.