No edit summary |
Tag: Undo |
||
(17 intermediate revisions by 4 users not shown) | |||
Line 22: | Line 22: | ||
== Current status == | == Current status == | ||
[[Category: | [[Category:ChangeAcceptedF36]] | ||
<!-- When your change proposal page is completed and ready for review and announcement --> | <!-- When your change proposal page is completed and ready for review and announcement --> | ||
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | <!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler --> | ||
Line 40: | Line 40: | ||
ON_QA -> change is fully code complete | ON_QA -> change is fully code complete | ||
--> | --> | ||
* FESCo issue: | * [https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/7LFCLLNZYNBRVH6GBPSV7I34DJL4Y5S7/ devel thread] | ||
* Tracker bug: | * FESCo issue: [https://pagure.io/fesco/issue/2706 #2706] | ||
* Release notes tracker: | * Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=2032030 #2032030] | ||
* Release notes tracker: [https://pagure.io/fedora-docs/release-notes/issue/779 #779] | |||
== Detailed Description == | == Detailed Description == | ||
Line 54: | Line 54: | ||
=== Plan === | === Plan === | ||
* Prepare | * Prepare PostgreSQL 14 in Copr (By 2022-01-15) | ||
* Rebuild important dependencies in Copr | * Rebuild important dependencies in Copr (By 2022-01-15) | ||
* Debug and fix compatibility issues found in dependencies (a reasonable amount of non-critical in FTBFS state might be tolerable) | * Debug and fix compatibility issues found in dependencies (a reasonable amount of non-critical in FTBFS state might be tolerable) | ||
Line 73: | Line 73: | ||
* Proposal owners: | * Proposal owners: | ||
<!-- What work do the feature owners have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | <!-- What work do the feature owners have to accomplish to complete the feature in time for release? Is it a large change affecting many parts of the distribution or is it a very isolated change? What are those changes?--> | ||
**Prepare PostgreSQL 14 | **Prepare PostgreSQL 14 | ||
**Prepare PostgreSQL 13 as a module for Rawhide | **Prepare PostgreSQL 13 as a module for Rawhide | ||
**Check software that requires or depends on `postgresql-server` or `libpq` packages for incompatibilities | **Check software that requires or depends on `postgresql-server` or `libpq` packages for incompatibilities | ||
Line 94: | Line 94: | ||
== Upgrade/compatibility impact == | == Upgrade/compatibility impact == | ||
The PostgreSQL client library (libpq component) is compatible. So, there shouldn't be any issues with compatibility, but rebuild of the depended components is | The PostgreSQL client library (libpq component) is compatible. So, there shouldn't be any issues with compatibility, but rebuild of the depended components is recommended. | ||
Server plugins might require a newer version update, because they sometimes have explicit server requirements. PostgreSQL maintainer will help fixing/rebuilding any issues in the plugins. | Server plugins might require a newer version update, because they sometimes have explicit server requirements. PostgreSQL maintainer will help fixing/rebuilding any issues in the plugins. | ||
Line 112: | Line 112: | ||
== 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 | 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. | ||
* | * PostgreSQL server dependecies | ||
** perl-DBD-Pg | ** perl-DBD-Pg | ||
** pgaudit | ** pgaudit | ||
** qt | ** qt | ||
** qt3 | ** qt3 | ||
** qt5-qtbase | ** qt5-qtbase | ||
** postgres-decoderbufs | ** postgres-decoderbufs | ||
** gambas3 | ** gambas3 | ||
** kdb | ** kdb | ||
Line 226: | Line 138: | ||
** rhdb-utils | ** rhdb-utils | ||
** timescaledb | ** timescaledb | ||
** pg_repack | |||
== Contingency Plan == | == Contingency Plan == |
Latest revision as of 09:25, 27 September 2022
PostgreSQL 14
Summary
Update of PostgreSQL (postgresql
and libpq
components) in Fedora from version 13 to version 14 in the non-modular (main) builds.
Owner
- Name: Filip Januš
- Email: fjanus@redhat.com
Current status
- Targeted release: Fedora Linux 36
- Last updated: 2022-09-27
- devel thread
- FESCo issue: #2706
- Tracker bug: #2032030
- Release notes tracker: #779
Detailed Description
Update of PostgreSQL (postgresql
and libpq
components) in Fedora from version 13 to version 14 in the non-modular (main) builds.
This also involves updating and rebuilding the PostgreSQL plugins that depend on postgresql server.
Plan
- Prepare PostgreSQL 14 in Copr (By 2022-01-15)
- Rebuild important dependencies in Copr (By 2022-01-15)
- Debug and fix compatibility issues found in dependencies (a reasonable amount of non-critical in FTBFS state might be tolerable)
- Prepare Pull requests in Rawhide
- Merge and build PR into Rawhide
Feedback
Benefit to Fedora
The latest stable software is used by Fedora users.
Scope
- Proposal owners:
- Prepare PostgreSQL 14
- Prepare PostgreSQL 13 as a module for Rawhide
- Check software that requires or depends on
postgresql-server
orlibpq
packages for incompatibilities - Build PostgreSQL 14 (postgresql and libpq) to Rawhide
- Rebuild depended on packages against PostgreSQL 14
- Gather user input on the changes between PostgreSQL 13 and PostgreSQL 14
- Other developers: N/A (not a System Wide Change)
- Release engineering: #Releng issue number (a check of an impact with Release Engineering is needed)
- 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 issues with compatibility, but rebuild of the depended components is recommended.
Server plugins might require a newer version update, because they sometimes have explicit server requirements. PostgreSQL maintainer will help fixing/rebuilding any issues in the plugins.
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 14.
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 14 server packages.
If users want to stick with PostgreSQL 13 for a little longer, there will be PostgreSQL 13 module
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.
- PostgreSQL server dependecies
- 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 14 as a module stream only.
Documentation
Upgrade strategy: https://www.postgresql.org/docs/14/upgrading.html
Release Notes
Release notes for PostgreSQL 14 release: https://www.postgresql.org/docs/14/index.html
Overall overview of the changes and improvements: https://www.postgresql.org/docs/14/release-14.html