From Fedora Project Wiki
Line 123: Line 123:


== Dependencies ==
== Dependencies ==
There are some packages (mostly server plugins), that build on top of PostgreSQL. Since the separation of PostgreSQL client library (libpq component), only packages that build server plugins should use postgresql package in BuildRequires, others should use libpq. In case of Postgresql-server, rebuild should be done to make sure all potential binary incompatibilities are handled.
<!-- What other packages (RPMs) depend on this package?  Are there changes outside the developers' control on which completion of this change depends?  In other words, completion of another change owned by someone else and might cause you to not be able to finish on time or that you would need to coordinate?  Other upstream projects like the kernel (if this is not a kernel change)? -->


<!-- REQUIRED FOR SYSTEM WIDE CHANGES -->
Some packages (mostly server plugins) build on top of PostgreSQL. Since the separation of the PostgreSQL client library (libpq component), only packages that build server plugins should use postgresql package in BuildRequires; others should use libpq. In the case of Postgresql-server, a rebuild should be done to make sure all potential binary incompatibilities are handled.
 
* PostgreSQL server dependencies
** perl-DBD-Pg
** pgaudit
** qt
** qt3
** qt5-qtbase
** postgres-decoderbufs
** gambas3
** kdb
** kea
** libpqxx
** openvas-manager
** orafce
** pg-semver
** pgRouting
** pgadmin3
** pgsphere
** postgis
** postgresql-ip4r
** postgresql-pgpool-II
** qt3
** rdkit
** rhdb-utils
** timescaledb
** pg_repack


== Contingency Plan ==
== Contingency Plan ==

Revision as of 15:07, 13 September 2022

PostgreSQL 15

Important.png
This is a proposed Change for Fedora Linux.
This document represents a proposed Change. As part of the Changes process, proposals are publicly announced in order to receive community feedback. This proposal will only be implemented if approved by the Fedora Engineering Steering Committee.

Summary

Update of PostgreSQL (postgresql and libpq components) in Fedora from version 13 to version 14 in the non-modular (main) builds.

PostgreSQL 15.0 Release Notes

Owner

Current status

  • Targeted release: [[Releases/<number> | Fedora Linux <number> ]]
  • Last updated: 2022-09-13
  • FESCo issue: <will be assigned by the Wrangler>
  • Tracker bug: <will be assigned by the Wrangler>
  • Release notes tracker: <will be assigned by the Wrangler>

Detailed Description

Update of PostgreSQL (postgresql and libpq components) in Fedora from version 14 to version 15 in the non-modular (main) builds.

This also involves moving the postgresql-static subpackage to libpq creating the libpq-static subpackage.

Feedback

Benefit to Fedora

The latest stable software is used by Fedora users, providing additional features and fixes.

Scope

  • Proposal owners:
    • Prepare PostgreSQL 15
    • Prepare PostgreSQL 14 as a module for Rawhide
    • Check software that requires or depends on postgresql-server or libpq packages for incompatibilities
    • Build PostgreSQL 15 (postgresql and libpq) to Rawhide
    • Rebuild depended on packages against PostgreSQL 15
    • Gather user input on the changes between PostgreSQL 14 and PostgreSQL 15
  • Other developers: N/A (not a System Wide Change)
  • Policies and guidelines: N/A (not a System Wide Change)
  • Trademark approval: N/A (not needed for this Change)

Upgrade/compatibility impact

The PostgreSQL client library (libpq component) is compatible. So, there shouldn't be any compatibility issues, but rebuilding the dependent components is recommended.

Server plugins might require a newer version update because they sometimes have explicit server requirements. PostgreSQL maintainer will help fix/rebuild any issues in the plugins.

How to upgrade your database data from one PostgreSQL release to a newer one is described in Upgrading a PostgreSQL Cluster

How To Test

Usual testing as when upgrading between major PostgreSQL versions, running postgresql-setup --upgrade is necessary between major versions.

Test that all other software runs well with PostgreSQL 15.

User Experience

The users will have to upgrade their databases the same way as between major PostgreSQL versions, aka postgresql-setup --upgrade after installing PostgreSQL 15 server packages.

If users want to stick with PostgreSQL 14 for a little longer, there will be PostgreSQL 14 module

Dependencies

Some packages (mostly server plugins) build on top of PostgreSQL. Since the separation of the PostgreSQL client library (libpq component), only packages that build server plugins should use postgresql package in BuildRequires; others should use libpq. In the case of Postgresql-server, a rebuild should be done to make sure all potential binary incompatibilities are handled.

  • PostgreSQL server dependencies
    • perl-DBD-Pg
    • pgaudit
    • qt
    • qt3
    • qt5-qtbase
    • postgres-decoderbufs
    • gambas3
    • kdb
    • kea
    • libpqxx
    • openvas-manager
    • orafce
    • pg-semver
    • pgRouting
    • pgadmin3
    • pgsphere
    • postgis
    • postgresql-ip4r
    • postgresql-pgpool-II
    • qt3
    • rdkit
    • rhdb-utils
    • timescaledb
    • pg_repack

Contingency Plan

Revert changes in the non-modular packages and provide PostgreSQL 15 as a module stream only.

Documentation

Upgrade strategy: https://www.postgresql.org/docs/15/upgrading.html

Release Notes

Release notes for PostgreSQL 15 release: https://www.postgresql.org/docs/15/index.html

Overall overview of the changes and improvements: https://www.postgresql.org/docs/15/release-15.html