Pulp and Postgres-13

Currently, Pulp builds and tests against Postgres-13. This is a Really Old Version; we use it because we have a significant userbase that relies on it, and we try to avoid inadvertently adding features that would require a newer DB.

However - Postgres-13 is going EOL in November 2025. We’d like to no longer rely on it well before then, to give folk who need to, time to upgrade before they start missing security fixes :slight_smile:

In pursuit of this goal, we’d like to settle on a more-recent Postgres for our CI and oci-images. I can see from https://analytics.pulpproject.org/ that we have users on everything up to and including Postgres-17(!), so it looks like we work on those versions.

One consideration here is the next “long term” support we’re likely to face (centos-10-stream’s beta is shipping Postgres-16, for example)

Does anyone have Opinions on “features it would be really cool to see Pulp take advantage of” in newer versions?

6 Likes

Better support for ICU (unicode language features) that come with PG16.

see also:

1 Like

OK folks - lots of discussion has been had.

The current consensus is that Pulp will:

  • be targeting Postgres16
  • as part of the core/3.85 release
  • which will happen in the next 10-15 weeks (call it “3 months(ish)”

The rationale is

  • we have to leave Postgres13 before it EOLs in November
  • there are some new features and a lot of performance improvements in 16
  • 16 is widely available in the EL/CentOS environment (EL9 and CentOS10, for example, both have 16 available)

Note that there are already people running Pulp on Postgres15/16/17 today (see the analytics site for that data). So we aren’t talking (yet) about code-changes - just changes to “what do our containers get built with” and “what Postgres do we test against in CI/PRs”.

Once we start taking advantage of new features, of course, then one would need the new Postgres in addition to updating Pulp code.

1 Like