Bug 1618698 - [modularity] drop postgresql-libs - create libpq.spec and libecpg.spec instead
Summary: [modularity] drop postgresql-libs - create libpq.spec and libecpg.spec instead
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: postgresql
Version: rawhide
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Pavel Raiskup
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1625651 1623764 1623766
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-08-17 11:18 UTC by Pavel Raiskup
Modified: 2019-01-14 11:50 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-01-14 11:50:14 UTC


Attachments (Terms of Use)

Description Pavel Raiskup 2018-08-17 11:18:09 UTC
Fedora (28+) already provides multiple versions of PostgreSQL packages, the
default version AND the modular version (even though DB team has not started
maintaining the modular PG stack, it's done by modularity people - available
for testing in /etc/yum.repos.d/fedora-modular.repo).

The ongoing plan is to support the modular PostgreSQL server, too, and make
that server interchangeable with system-default version (note that this is
not about parallel install-ability/SCL!).

The new layout should be 100% compatible with what we have provided so far,
so regular user shouldn't really observe big differences.  I.e. each Fedora
version should still (by default) provide/install the latest PostgreSQL
major server version which was available at the time of Fedora branching
(from Fedora Rawhide).

So the change is that, in module repository (in module streams), we'll
provide different versions of set of PostgreSQL server packages
(postgresql-server, postgresql-contrib, postgresql-pl*, etc., + third party
modules built against that server).

The major change in 'postgresql.spec' is that we'll drop shared libraries
from there - the postgresql-libs subpackage.  Newly the contents of
postgresql-libs subpackage will be provided in 'libpq' and 'libecpg'
packages (with *-devel counterparts).  The benefit of this layout is that,
even though servers will be distributed in multiple versions, the _client_
library can be built and maintained only once per system.

We expect to provide older PG stack version usually in modules, but it _is_
expected (we at least wish) that we could even start shipping newer version of
PostgreSQL server module in the middle of Fedora stable release.  For this
purpose, we might need to have libpq updated to newer major version (if the
newly provided server version will require a newer libpq, e.g. because there
are newer symbols).  So to automatically guard against server/client-lib
mis-installation, we'll start with small downstream change -- with versioned
ABI of the libpq library.

This approach (single version of libpq and ABI versioning) has been
discussed upstream and the result is that:

  - Debian packagers do something similar (slightly differently because
    they maintain several libpq.so.5 versions in parallel, but only
    the latest required libpq is installed)

  - upstream is not ATM very much interested in ABI versioning support

If upstream decided to implement ABI versioning one day, we'd migrate to
that scheme in the next branched distro version.

[1] https://www.postgresql.org/message-id/5261375.z5KIV9Ssac%40nb.usersys.redhat.com

This bug is meant to serve the tracking purpose.

Comment 1 Fedora Update System 2018-08-27 14:07:33 UTC
postgresql-10.5-3.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2018-8870ed56fa

Comment 2 Fedora Update System 2018-08-27 14:07:58 UTC
postgresql-9.6.10-3.fc27 has been submitted as an update to Fedora 27. https://bodhi.fedoraproject.org/updates/FEDORA-2018-36b0b4efc9

Comment 3 Fedora Update System 2018-08-28 10:51:03 UTC
postgresql-10.5-3.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-8870ed56fa

Comment 4 Fedora Update System 2018-08-28 11:39:09 UTC
postgresql-9.6.10-3.fc27 has been pushed to the Fedora 27 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-36b0b4efc9

Comment 6 Fedora Update System 2018-08-31 21:16:43 UTC
postgresql-10.5-3.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 7 Pavel Raiskup 2018-09-05 06:05:35 UTC
postgresql.spec pull request for review:
https://src.fedoraproject.org/rpms/postgresql/pull-request/3

Comment 8 Fedora Update System 2018-09-13 17:06:07 UTC
postgresql-9.6.10-3.fc27 has been pushed to the Fedora 27 stable repository. If problems still persist, please make note of it in this bug report.

Comment 9 Pavel Raiskup 2019-01-14 11:50:14 UTC
This is now in F30+.  Feel free to re-open if there are any problems.


Note You need to log in before you can comment on or make changes to this bug.