No edit summary |
(adding tracker bug) |
||
(6 intermediate revisions by 3 users not shown) | |||
Line 2: | Line 2: | ||
= Retirement of PostgreSQL 15 = | = Retirement of PostgreSQL 15 = | ||
== Summary == | == Summary == | ||
Line 23: | Line 21: | ||
== Current status == | == Current status == | ||
[[Category: | [[Category:ChangeAcceptedF42]] | ||
<!-- 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 39: | ||
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: | * FESCo issue: [https://pagure.io/fesco/issue/3296 #3296] | ||
* Tracker bug: | * Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=2332655 #2332655] | ||
* Release notes tracker: <will be assigned by the Wrangler> | * Release notes tracker: <will be assigned by the Wrangler> | ||
Line 111: | Line 109: | ||
In the case user's still didn't upgrade to the default stream 16, the standard upgrade strategy should be followed: | In the case user's still didn't upgrade to the default stream 16, the standard upgrade strategy should be followed: | ||
# Stop the `postgresql` service | # Dump and restore upgrade | ||
# Dump the databases using `su - postgres -c "pg_dumpall > /PATH/TO/pgdump_file.sql"` | ## Stop the `postgresql` service | ||
# Backup all of the data in `/var/lib/pgsql/data/` | ## Dump the databases using `su - postgres -c "pg_dumpall > /PATH/TO/pgdump_file.sql"` | ||
# Upgrade PostgreSQL using (e.g. for upgrading to PG-16) `dnf | ## Backup all of the data in `/var/lib/pgsql/data/` | ||
# Copy the old configuration files to the `/var/lib/pgsql/data/` | ## Enumerate all postgresql-based packages by `rpm -qa | grep postgresql` | ||
# Start the | ## Upgrade all installed (enumerated in the previous step) PostgreSQL packages using (e.g. for upgrading to PG-16) `dnf install PACKAGE_NAMES --allowerasing` | ||
# Import data from the dumped file using `su - postgres -c 'psql -f /PATH/TO/pgdump_file.sql postgres'` | ## 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 --> |
Latest revision as of 20:39, 16 December 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-12-16
- Announced
- Discussion thread
- FESCo issue: #3296
- Tracker bug: #2332655
- 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)