Bug 1811800 - Multiple packages have broken dependencies due to PostgreSQL 12 [NEEDINFO]
Summary: Multiple packages have broken dependencies due to PostgreSQL 12
Keywords:
Status: ON_QA
Alias: None
Product: Fedora
Classification: Fedora
Component: postgresql
Version: 32
Hardware: Unspecified
OS: Unspecified
unspecified
high
Target Milestone: ---
Assignee: Patrik Novotný
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: RejectedBlocker
Depends On: 1813525
Blocks: BetaBlocker, F32BetaBlocker F32FailsToInstall 1801396 F33FailsToInstall
TreeView+ depends on / blocked
 
Reported: 2020-03-09 19:54 UTC by Miro Hrončok
Modified: 2020-03-27 14:16 UTC (History)
17 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
bcotton: fedora_prioritized_bug+
zbyszek: needinfo? (panovotn)
zbyszek: needinfo? (volker27)


Attachments (Terms of Use)

Description Miro Hrončok 2020-03-09 19:54:11 UTC
Description of problem:

After PostgreSQL was updated to 12 in Fedora 32 via:

https://fedoraproject.org/wiki/Changes/PostgreSQL_12

The dependent packages were not rebuilt.

Multiple of them have broken runtime dependencies and they fail to install in Fedora 32 and rawhide.

See Fedora health check report for the data:

https://pagure.io/fedora-health-check/blob/master/f/reports/report-32-testing.md

Packages requiring postgresql-server(:MODULE_COMPAT_11) and failing to install:

orafce 
pgRouting
pgaudit
pgsphere
postgis
postgres-decoderbufs
postgresql-ip4r
postgresql-pgpool-II-extensions
postgresql-plruby
rdkit-postgresql
rhdb-utils
timescaledb

I am proposing this as a beta blocker, the Fedora change says "Contingency mechanism: If there are significant problems, we'll revert the change and users can opt in for postgres 12 from modules."

Please either rebuild the packages with Postgres 12, revert the change, or provide another solution to avoid so many broken dependencies.

Thank You.

Comment 1 Miro Hrončok 2020-03-09 19:55:13 UTC
And since this doesn't violate any release criteria and the blocker might not be granted, I also nominate this as prioritized bug.

Comment 2 Stephen Gallagher 2020-03-10 19:14:57 UTC
I'm -1 on calling this a blocker since it doesn't violate any release criteria that I can think of. Since none of the packages listed above are likely to be on install media, I don't see any reason to grant it an FE either, so -1 FE.

That said, I'm +1 for treating it as a Prioritized Bug.

Comment 3 Adam Williamson 2020-03-11 16:50:26 UTC
-1 blocker for me too, this doesn't seem to hit any criteria. Note that the Change process and its contingency plan mechanism is separate from the release blocker process, you should follow the Change process to request triggering the contingency plan for a Change, not the release blocker process.

Comment 5 Zbigniew Jędrzejewski-Szmek 2020-03-12 10:26:58 UTC
I see orafce is being built now by devrim (for F33, but hopefully F32 will follow).

@panovotn, @devrim, @volter, what the plan here? I assume that we want to rebuild
eveything for postgresql12 and not revert things. Which packages are you working on,
and which ones need help?

Comment 6 Zbigniew Jędrzejewski-Szmek 2020-03-12 10:48:47 UTC
timescaledb fails with "TimescaleDB only supports PostgreSQL 9.6, 10 or 11".
There's 1.6.0 on github, but no mention of postgresql12 in the release notes...

postgresql-plruby fails wiht
error: File not found: /builddir/build/BUILDROOT/postgresql-plruby-0.5.7-6.fc33.x86_64/usr/lib64/ruby/vendor_ruby/plruby.so
There is 0.6.0 on github...

Comment 7 Zbigniew Jędrzejewski-Szmek 2020-03-12 11:29:39 UTC
Proposal: rebuild packages that build with PG12 and update in F32. The ones that don't work with PG12
— provide instructions how to enable the postgresql11 module (users will need t perform a manual step).

Comment 8 Patrik Novotný 2020-03-12 12:14:03 UTC
Since postgresql is FTBFS right now due to some perl related issues, I will resolve all of those JIT dependencies in the postgresql package with that and rebuild the packages.

As for the timescaledb, the PostgreSQL 12 compatibility should be included in the March release really soon. It's been delayed by upstream.

The postgresql-plruby should be dropped in my opinion. It has been dropped from some other distributions and I don't expect compatibility of this package with new PostgreSQL releases. I'm not a maintainer of that package though.

Other packages should be fine after I fix the postgresql (which I will by the end of this week).

Comment 9 Fabio Valentini 2020-03-12 12:24:03 UTC
Note that postgresql-plruby is orphaned right now.
So you could just take it and do what needs to be done (be that fix it, or retire it on fedora 32+).

Comment 10 Patrik Novotný 2020-03-12 12:25:54 UTC
Good point, Fabio. Will do, thanks.

Comment 11 Devrim Gündüz 2020-03-13 00:37:39 UTC
Can someone please cancel koji task 42409806 ?

Looks like I don't have enough power to do it. It got stuck, I cannot cancel it, and it's blocking orafce builds.

Thanks!

Comment 12 Devrim Gündüz 2020-03-13 00:44:02 UTC
These packages do not have PostgreSQL 12 support, and  should be orphaned:

pgsphere
postgres-decoderbufs
postgresql-plruby
timescaledb

Also, IIRC this is way too old, but need confirmation from others
rhdb-utils

Regards, Devrim

Comment 13 Devrim Gündüz 2020-03-13 00:56:13 UTC
Updated and built pgaudit on rawhide and f32

Comment 14 Ben Cotton 2020-03-13 14:33:49 UTC
Discussed at the 2020-03-12 Go/No-Go meeting:
https://meetbot.fedoraproject.org/fedora-meeting-1/2020-03-12/f32-beta-go_no_go-meeting.2020-03-12-17.00.log.html#l-103

This bug does not violate any release criteria.

Comment 15 Devrim Gündüz 2020-03-13 15:37:07 UTC
Pushed orafce to rawhide and f32

Comment 16 Fedora Update System 2020-03-13 18:33:50 UTC
orafce-3.9.0-1.fc32 has been pushed to the Fedora 32 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-2020-31a431c6b9

Comment 17 Fedora Update System 2020-03-14 08:45:37 UTC
FEDORA-2020-c88ae77e62 has been submitted as an update to Fedora 32. https://bodhi.fedoraproject.org/updates/FEDORA-2020-c88ae77e62

Comment 18 Honza Horak 2020-03-14 08:46:42 UTC
(In reply to Devrim Gündüz from comment #12)
> These packages do not have PostgreSQL 12 support, and  should be orphaned:
> 
> pgsphere

There is some movement in upstream (https://github.com/akorotkov/pgsphere/commit/e0b303d0bff6a5f6596d3f48b4d9fb2e0f7bf160), not sure how useful this extension is though, so +1 for orphaning. Since there are still two packagers, I've opened a bug for tracking the rebuild meanwhile: https://bugzilla.redhat.com/show_bug.cgi?id=1813525.

> postgresql-plruby

+1 for dropping, Patrik said above that it is planned.

> postgres-decoderbufs

There is a PR for a version that is compatible with PostgreSQL v12: https://src.fedoraproject.org/rpms/postgres-decoderbufs/pull-request/3. I'd like to keep this one in Fedora.

> timescaledb

I believe it is a matter of time now, I'd rather wait for the update and document that timescale is usable in Fedora 32 only with PostgreSQL v11 (in the module) so far.

> Also, IIRC this is way too old, but need confirmation from others
> rhdb-utils

Hard to tell how many people use it, but it is far from dead in the upstream: https://git.postgresql.org/gitweb/?p=pg_filedump.git. Anyway, it is now rebuilt with PostgreSQL v12 in F32.

Comment 19 Honza Horak 2020-03-14 08:51:12 UTC
(In reply to Fedora Update System from comment #17)
> FEDORA-2020-c88ae77e62 has been submitted as an update to Fedora 32.
> https://bodhi.fedoraproject.org/updates/FEDORA-2020-c88ae77e62

This update has now these packages:
postgresql-ip4r-2.4.1-4.fc32
postgresql-pgpool-II-4.1.1-1.fc32
rhdb-utils-12.0-2.fc32

Comment 20 Fedora Update System 2020-03-14 17:51:19 UTC
postgresql-ip4r-2.4.1-4.fc32, postgresql-pgpool-II-4.1.1-1.fc32, rhdb-utils-12.0-2.fc32 has been pushed to the Fedora 32 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-2020-c88ae77e62

Comment 21 Fedora Update System 2020-03-17 01:45:01 UTC
orafce-3.9.0-1.fc32 has been pushed to the Fedora 32 stable repository. If problems still persist, please make note of it in this bug report.

Comment 22 Zbigniew Jędrzejewski-Szmek 2020-03-17 09:14:37 UTC
I retired postgresql-plruby and added it to fedora-obsolete-packages for F32 and rawhide now.

This leaves:
pgRouting-0:3.0.0-0.rc1.1.fc32.x86_64
pgsphere-0:1.1.1-27.fc32.x86_64              (#1813525)
postgres-decoderbufs-0:0.9.5-2.fc31.x86_64   (https://src.fedoraproject.org/rpms/postgres-decoderbufs/pull-request/3)
timescaledb-0:1.5.1-2.fc32.x86_64            (https://github.com/timescale/timescaledb/pull/1525)

Comment 23 Fedora Update System 2020-03-18 02:50:34 UTC
postgresql-ip4r-2.4.1-4.fc32, postgresql-pgpool-II-4.1.1-1.fc32, rhdb-utils-12.0-2.fc32 has been pushed to the Fedora 32 stable repository. If problems still persist, please make note of it in this bug report.

Comment 24 Miro Hrončok 2020-03-18 10:58:00 UTC
(In reply to Zbigniew Jędrzejewski-Szmek from comment #22)
> I retired postgresql-plruby and added it to fedora-obsolete-packages for F32
> and rawhide now.
> 

I've merged the retirement commit to f32.

We should monitor if it gets picked up by Koji:

$ koji list-pkgs  --show-blocked --tag f33 --package postgresql-plruby
Package                 Tag                     Extra Arches     Owner          
----------------------- ----------------------- ---------------- ---------------
postgresql-plruby       f33                                      releng          [BLOCKED]

$ koji list-pkgs  --show-blocked --tag f32 --package postgresql-plruby
Package                 Tag                     Extra Arches     Owner          
----------------------- ----------------------- ---------------- ---------------
postgresql-plruby       f32                                      releng

Comment 25 Miro Hrončok 2020-03-27 09:14:32 UTC
Current status:

$ repoquery --repo=rawhide --whatrequires 'postgresql-server(:MODULE_COMPAT_11)'
pgRouting-0:3.0.0-0.rc1.1.fc32.x86_64
postgres-decoderbufs-0:0.9.5-2.fc31.x86_64
timescaledb-0:1.5.1-2.fc32.x86_64


$ repoquery --releasever=32 --repo={fedora,updates{,-testing}} --latest=1 --whatrequires 'postgresql-server(:MODULE_COMPAT_11)'
pgRouting-0:3.0.0-0.rc1.1.fc32.x86_64
pgsphere-0:1.1.1-27.fc32.x86_64
postgres-decoderbufs-0:0.9.5-2.fc31.x86_64
timescaledb-0:1.5.1-2.fc32.x86_64

Comment 26 Pavel Raiskup 2020-03-27 13:45:50 UTC
FWIW, I very much understand the reasons why we want to keep the upgrade
path working, etc.

But note that the user's data are the most valuable thing in this case,
and it is always better if user is warned that the plugin on Fedora +1
is not compatible.  And rather not to do the upgrade at all, until 
the plugins are successfully removed on the old Fedora.

That said, ideally - if that is at least a bit possible - don't
obsolete the dropped packages by `fedora-obsolete-packages` if possible.
That would only lead to mistakenly upgraded boxes without easy way
to resurrect the database..

Comment 27 Miro Hrončok 2020-03-27 14:16:38 UTC
> don't obsolete the dropped packages by `fedora-obsolete-packages` if possible

Well it is possible, but very uncommon. Possibly a bigger discussion for the devel mailing list.


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