Thread: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
Dave Page
Date:
Hi,

This is more of a head-ups than anything else, as I suspect this may come up in various forums.

The PostgreSQL installers for macOS (from EDB, possibly others too) create the data directory in /Library/PostgreSQL/<major_ver>/data. This has been the case since the first release, 10+ years ago.

It looks like the Big Sur upgrade has taken it upon itself to "fix" any filesystem permissions it doesn't like. On my system, this resulted in the data directory having 0755 permissions, which meant that PostgreSQL refused to start. Manually changing the permissions back to 0700 (0750 should also work) fixes the issue.

I'm not sure there's much we can do about this - systems that are likely to be affected are already out there, and we obviously don't want to relax the permissions Postgres requires.

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: http://www.enterprisedb.com

Re: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
"Jonathan S. Katz"
Date:
On 11/16/20 4:27 AM, Dave Page wrote:
> Hi,
>
> This is more of a head-ups than anything else, as I suspect this may
> come up in various forums.
>
> The PostgreSQL installers for macOS (from EDB, possibly others too)
> create the data directory in /Library/PostgreSQL/<major_ver>/data. This
> has been the case since the first release, 10+ years ago.
>
> It looks like the Big Sur upgrade has taken it upon itself to "fix" any
> filesystem permissions it doesn't like. On my system, this resulted in
> the data directory having 0755 permissions, which meant that PostgreSQL
> refused to start. Manually changing the permissions back to 0700 (0750
> should also work) fixes the issue.
>
> I'm not sure there's much we can do about this - systems that are likely
> to be affected are already out there, and we obviously don't want to
> relax the permissions Postgres requires.

Thanks for raising this. We should provide some guidance on upgrading
this when upgrading to Big Sur.

Do we know where the other macOS installers place their data
directories? We should reach out to the installer maintainers to see if
they are seeing the same behavior so we know what guidance to issue.

Thanks,

Jonathan

Attachment

Re: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
Dave Page
Date:


On Mon, Nov 16, 2020 at 3:55 PM Jonathan S. Katz <jkatz@postgresql.org> wrote:
On 11/16/20 4:27 AM, Dave Page wrote:
> Hi,
>
> This is more of a head-ups than anything else, as I suspect this may
> come up in various forums.
>
> The PostgreSQL installers for macOS (from EDB, possibly others too)
> create the data directory in /Library/PostgreSQL/<major_ver>/data. This
> has been the case since the first release, 10+ years ago.
>
> It looks like the Big Sur upgrade has taken it upon itself to "fix" any
> filesystem permissions it doesn't like. On my system, this resulted in
> the data directory having 0755 permissions, which meant that PostgreSQL
> refused to start. Manually changing the permissions back to 0700 (0750
> should also work) fixes the issue.
>
> I'm not sure there's much we can do about this - systems that are likely
> to be affected are already out there, and we obviously don't want to
> relax the permissions Postgres requires.

Thanks for raising this. We should provide some guidance on upgrading
this when upgrading to Big Sur.

Do we know where the other macOS installers place their data
directories? We should reach out to the installer maintainers to see if
they are seeing the same behavior so we know what guidance to issue.

I believe postgres.app only installs for the current user, and puts it's data under ~/Library/Application Support/Postgres.
 
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: http://www.enterprisedb.com

Re: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
Pavel Borisov
Date:
I suppose there are many ways to have PG on OSX i.e. package managers (Homebrew, Macports), App installers etc and so many places anyone can find his data directory reside in. Generally I prefer data directory to be somewhere inside the user home dir as OSX will take care of possible backups and will not generally modify its contents during migration betweeb osx versions and/or different machines. It is not only the question of permissions.

Any options inside user homedir are equally suitable IMO.

---
Best regards,
Pavel Borisov

Postgres professional: http://postgrespro.com

Re: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
Dave Page
Date:


On Mon, Nov 16, 2020 at 4:45 PM Pavel Borisov <pashkin.elfe@gmail.com> wrote:
I suppose there are many ways to have PG on OSX i.e. package managers (Homebrew, Macports), App installers etc and so many places anyone can find his data directory reside in. Generally I prefer data directory to be somewhere inside the user home dir as OSX will take care of possible backups and will not generally modify its contents during migration betweeb osx versions and/or different machines. It is not only the question of permissions.

Any options inside user homedir are equally suitable IMO.

It is in the user's homedir - it's just that that isn't under /Users:

hal:~ postgres$ echo $HOME
/Library/PostgreSQL/13

With the EDB installers (unlike postgres.app), PostgreSQL runs as a service, much as it would on Linux or BSD.
 
--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: http://www.enterprisedb.com

Re: Heads-up: macOS Big Sur upgrade breaks EDB PostgreSQL installations

From
Dave Page
Date:
FYI, both Jonathan and I have now tested this on additional machines and have been unable to reproduce the issue, so it seems like something odd happened on my original upgrade rather than a general issue.

Apologies for the noise.

On Mon, Nov 16, 2020 at 9:27 AM Dave Page <dpage@pgadmin.org> wrote:
Hi,

This is more of a head-ups than anything else, as I suspect this may come up in various forums.

The PostgreSQL installers for macOS (from EDB, possibly others too) create the data directory in /Library/PostgreSQL/<major_ver>/data. This has been the case since the first release, 10+ years ago.

It looks like the Big Sur upgrade has taken it upon itself to "fix" any filesystem permissions it doesn't like. On my system, this resulted in the data directory having 0755 permissions, which meant that PostgreSQL refused to start. Manually changing the permissions back to 0700 (0750 should also work) fixes the issue.

I'm not sure there's much we can do about this - systems that are likely to be affected are already out there, and we obviously don't want to relax the permissions Postgres requires.

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: http://www.enterprisedb.com



--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EDB: http://www.enterprisedb.com