(Created page with "<!-- The actual name of your proposed change page should look something like: Changes/Your_Change_Proposal_Name. This keeps all change proposals in the same namespace --> = Retirement of PostgreSQL 15 = {{Change_Proposal_Banner}} == Summary == <!-- A sentence or two summarizing what this change is and what it will do. This information is used for the overall changeset summary page for each release. Note that motivation for the change should be in the Benefit to Fedor...") |
(Announcing the Change proposal) |
||
(5 intermediate revisions by 2 users not shown) | |||
Line 23: | Line 23: | ||
== Current status == | == Current status == | ||
[[Category: | [[Category:ChangeAnnounced]] | ||
<!-- 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 41: | Line 41: | ||
ON_QA -> change is fully code complete | ON_QA -> change is fully code complete | ||
--> | --> | ||
* [Announced] | * [https://lists.fedoraproject.org/archives/list/devel-announce@lists.fedoraproject.org/thread/XEZSEDC4VWYVOY2F44474NTURHN55AHH/ Announced] | ||
* [ | * [https://discussion.fedoraproject.org/t/f42-change-proposal-retirement-of-postgresql-15-self-contained/136636 Discussion thread] | ||
* FESCo issue: <will be assigned by the Wrangler> | * FESCo issue: <will be assigned by the Wrangler> | ||
* Tracker bug: <will be assigned by the Wrangler> | * Tracker bug: <will be assigned by the Wrangler> | ||
Line 49: | Line 49: | ||
== Detailed Description == | == Detailed Description == | ||
<!-- Expand on the summary, if appropriate. A couple sentences suffices to explain the goal, but the more details you can provide the better. --> | <!-- Expand on the summary, if appropriate. A couple sentences suffices to explain the goal, but the more details you can provide the better. --> | ||
With the addition of PostgreSQL-17 to Fedora 42, maintaining | With the addition of PostgreSQL-17 to Fedora 42, maintaining PG15 is no longer necessary and creates a significant capacity burden. | ||
This will also mean the retirement of the dependent components like `postgresql15-pgaudit`, `postgresql15-pg_repack`, and `postgresql15-decoderbufs`. | This will also mean the retirement of the dependent components like `postgresql15-pgaudit`, `postgresql15-pg_repack`, and `postgresql15-decoderbufs`. | ||
Line 110: | Line 110: | ||
<!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? --> | <!-- What happens to systems that have had a previous versions of Fedora installed and are updated to the version containing this change? Will anything require manual configuration or data migration? Will any existing functionality be no longer supported? --> | ||
In the case user's still didn't upgrade to the default stream 16, the upgrade strategy | In the case user's still didn't upgrade to the default stream 16, the standard upgrade strategy should be followed: | ||
# Dump and restore upgrade | |||
## Stop the `postgresql` service | |||
## Dump the databases using `su - postgres -c "pg_dumpall > /PATH/TO/pgdump_file.sql"` | |||
## Backup all of the data in `/var/lib/pgsql/data/` | |||
## Enumerate all postgresql-based packages by `rpm -qa | grep postgresql` | |||
## Upgrade all installed (enumerated in the previous step) PostgreSQL packages using (e.g. for upgrading to PG-16) `dnf install PACKAGE_NAMES --allowerasing` | |||
## Copy the old configuration files to the `/var/lib/pgsql/data/` | |||
## Start the `postgresql` service | |||
## Import data from the dumped file using `su - postgres -c 'psql -f /PATH/TO/pgdump_file.sql postgres'` | |||
# Fast upgrade using the pg_upgrade utility | |||
## Stop the `postgresql` service | |||
## Backup all of the data in `/var/lib/pgsql/data/` | |||
## Enumerate all postgresql-based packages by `rpm -qa | grep postgresql` | |||
## Upgrade all installed (enumerated in the previous step) PostgreSQL packages using (e.g. for upgrading to PG-16) `dnf install PACKAGE_NAMES --allowerasing` | |||
## Install the upgrade package `dnf install postgresql-upgrade` | |||
## Run `postgresql-setup --upgrade` | |||
## Copy the old configuration files to the `/var/lib/pgsql/data/` | |||
## Run `# systemctl start postgresql.service` | |||
<!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
Line 151: | Line 169: | ||
<!-- 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)? --> | <!-- 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)? --> | ||
The following dependencies (stand-alone packages) will be retired alongside the postgresql15: | |||
*`postgresql15-pgaudit`, `postgresql15-pg_repack`, and `postgresql15-decoderbufs` | |||
<!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> |
Latest revision as of 22:17, 12 November 2024
Retirement of PostgreSQL 15
Summary
PostgreSQL version 15 will be retired from Fedora 42 since there are newer versions like 16 and 17. Version 16 is already the default version (announced in PostgreSQL16 change), and version 17 would be the alternative.
Owner
- Name: Lukas Javorsky, Filip Janus
- Email: ljavorsk@redhat.com, fjanus@redhat.com
Current status
- Targeted release: Fedora Linux 42
- Last updated: 2024-11-12
- Announced
- Discussion thread
- 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
With the addition of PostgreSQL-17 to Fedora 42, maintaining PG15 is no longer necessary and creates a significant capacity burden.
This will also mean the retirement of the dependent components like postgresql15-pgaudit
, postgresql15-pg_repack
, and postgresql15-decoderbufs
.
Feedback
Benefit to Fedora
Lesser PostgreSQL versions to maintain and newer versions with additional features.
Scope
- Proposal owners:
- Follow the Package Retirement Process
- Other developers:
- Release engineering: #Releng issue number
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with the Fedora Strategy:
Upgrade/compatibility impact
In the case user's still didn't upgrade to the default stream 16, the standard upgrade strategy should be followed:
- Dump and restore upgrade
- Stop the
postgresql
service - Dump the databases using
su - postgres -c "pg_dumpall > /PATH/TO/pgdump_file.sql"
- Backup all of the data in
/var/lib/pgsql/data/
- Enumerate all postgresql-based packages by
rpm -qa | grep postgresql
- Upgrade all installed (enumerated in the previous step) PostgreSQL packages using (e.g. for upgrading to PG-16)
dnf install PACKAGE_NAMES --allowerasing
- Copy the old configuration files to the
/var/lib/pgsql/data/
- Start the
postgresql
service - Import data from the dumped file using
su - postgres -c 'psql -f /PATH/TO/pgdump_file.sql postgres'
- Stop the
- Fast upgrade using the pg_upgrade utility
- Stop the
postgresql
service - Backup all of the data in
/var/lib/pgsql/data/
- Enumerate all postgresql-based packages by
rpm -qa | grep postgresql
- Upgrade all installed (enumerated in the previous step) PostgreSQL packages using (e.g. for upgrading to PG-16)
dnf install PACKAGE_NAMES --allowerasing
- Install the upgrade package
dnf install postgresql-upgrade
- Run
postgresql-setup --upgrade
- Copy the old configuration files to the
/var/lib/pgsql/data/
- Run
# systemctl start postgresql.service
- Stop the
Early Testing (Optional)
How To Test
The postgresql15*
RPMs should not be in the Fedora mirrors and should not be installed.
User Experience
Dependencies
The following dependencies (stand-alone packages) will be retired alongside the postgresql15:
postgresql15-pgaudit
,postgresql15-pg_repack
, andpostgresql15-decoderbufs
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), No
Documentation
N/A (not a System Wide Change)