Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Linux Postgres version is out of date (v10 vs v16) #823

Closed
2 of 6 tasks
spa5k opened this issue Mar 19, 2024 · 5 comments
Closed
2 of 6 tasks

Linux Postgres version is out of date (v10 vs v16) #823

spa5k opened this issue Mar 19, 2024 · 5 comments
Labels
enhancement New feature or request in-progress this is being worked en presently

Comments

@spa5k
Copy link

spa5k commented Mar 19, 2024

Update from AJ

Since the core postgres team has given a hard pass to official standalone builds, and since I need this as part of my work with https://bnna.net, we'll be adding prebuilt postgresql support, which starts with the current version, PostgreQSL 17.0.

What were you trying to install (or what else went wrong)?

Postgres

What exactly did you do?

Installed postgres, found out that it installs v10 for stable, and higest possible version is 12.3 from here - https://webinstall.dev/api/releases/postgres

What went wrong?

It should be v16.2

Which OS did you try on?

  • Mac
  • Windows
  • Linux

What type of computer (i.e. laptop, desktop, Raspberry Pi)?

  • Laptop or Desktop (amd64 / x86-64)
  • Raspberry Pi (ARM-64)
  • Other (please specify, if you know)
@spa5k spa5k added the bug Something isn't working label Mar 19, 2024
@coolaj86
Copy link
Member

coolaj86 commented Mar 27, 2024

Update (2024-10-11)

Since the core postgres team has given a hard pass to official standalone builds, and since I need this as part of my work with https://bnna.net, we'll be adding prebuilt postgresql support, which starts with the current version, PostgreQSL 17.0.

EnterpriseDB (the PostgreSQL company) does not provide Linux binaries

The problem here is that EnterpriseDB (the PostgreSQL company) stopped supporting Linux around v10.x:

It's now up to individual maintainers to roll their own packages, and I don't have the resources to do that.

There's probably a way to extract the binaries from the .deb or .rpm and they're probably built in a way that they'll install on any Linux. However, dependency management may become an issue.

Alpine Linux doesn't support recent PostgreSQL in recent releases:

@coolaj86 coolaj86 changed the title [Bug] Postgres is very old Linux Postgres version is out of date (v10 vs v16) Mar 27, 2024
@coolaj86 coolaj86 added help wanted Extra attention is needed cantfix Not technically feasible (or at least not at this time) and removed bug Something isn't working labels Mar 27, 2024
@coolaj86
Copy link
Member

I'm open to finding a solution, but I need help - probably from someone who has built PostgreSQL binaries before.

@spa5k
Copy link
Author

spa5k commented Mar 28, 2024

That is indeed a problem, I think we can just mark Postgres as deprecated for now.

@coolaj86
Copy link
Member

coolaj86 commented Jun 3, 2024

Closing this out for now.

I think my fix is going to be to use "polite sudo" and install from the package manager, but with a local data dir.

@coolaj86
Copy link
Member

coolaj86 commented Oct 12, 2024

Update (2024-10-11)

The time is at hand:

I'll officially be maintaining postgres and psql builds as part of my work with https://bnna.net.

The fresh builds are live in beta at

(they're actively being worked on so they if there's an error, just try again in a few minutes)

Backstory

I've been anxiously awaiting for Postgres 17 to release since they finally added standard TLS support (including SNI and ALPN). And despite keeping a keen eye on the release, I missed that it actually dropped two weeks ago.

Anyway, since I know it may not come to Debian and Ubuntu for a few years, and possibly not to Alpine for several months, and since I've had enough discussion on the mailing list to know that the core team is simply not interested in standalone builds (but getting enough direction to point me in the right direction), I finally sunk a day into figuring out how to get it to compile in a way that will work well-enough for most Webi users.

The solution isn't to compile statically (the core team has given that a hard pass to everyone who has asked), but rather to bundle dynamic libraries with modified rpath (using patchelf and install_name_tool) so that they can be found from the project's ./lib/ folder.

I'm going to try to finish the process for the macOS build before this officially goes live, and I will have complete scripts that I'll be running regularly as new postgres releases come out to service as many platforms and architectures as I have access to.

I believe I've found the right balance of things that are trivial and should just be bundled (zlib, readline), things that shouldn't be bundled (openssl, tzdata), and things that can be optional (llvm for jit query planner optimization).

@coolaj86 coolaj86 added enhancement New feature or request in-progress this is being worked en presently and removed help wanted Extra attention is needed cantfix Not technically feasible (or at least not at this time) labels Oct 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request in-progress this is being worked en presently
Projects
None yet
Development

No branches or pull requests

2 participants