Bug 2291247

Summary: clang16-resource-filesystem conflicts on upgrade
Product: [Fedora] Fedora Reporter: Elliott Sales de Andrade <quantum.analyst>
Component: clang16Assignee: Tulio Magno Quites Machado Filho <tuliom>
Status: CLOSED ERRATA QA Contact:
Severity: medium Docs Contact:
Priority: unspecified    
Version: 40CC: epel-packagers-sig, fedora-llvm-team, michel, tuliom
Target Milestone: ---Keywords: Reopened
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: clang16-16.0.6-8.fc41 clang16-16.0.6-8.fc40 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-06-23 06:52:08 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Elliott Sales de Andrade 2024-06-11 02:12:57 UTC
When running a system upgrade from Fedora 39 to 40, I get a problem due to the i686 package not existing:

 Problem 2: clang16-resource-filesystem-16.0.6-5.fc40.i686 from fedora  does not belong to a distupgrade repository
  - cannot install both clang16-resource-filesystem-16.0.6-7.fc40.x86_64 from updates and clang16-resource-filesystem-16.0.6-5.fc40.x86_64 from fedora
  - cannot install the best update candidate for package clang16-resource-filesystem-16.0.6-3.fc39.i686
  - cannot install the best update candidate for package clang16-resource-filesystem-16.0.6-3.fc39.x86_64

Reproducible: Always

Comment 1 Elliott Sales de Andrade 2024-06-11 03:35:25 UTC
I tried to reproduce in a container, but wasn't able to get the "Problem" conflicts to show up. However, something is still a bit off, as the versions are not in sync:

$ podman run --rm -it fedora:39
# dnf install -y clang16-devel.i686 clang16-devel.x86_64 'dnf-command(system-upgrade)'
# dnf system-upgrade download --releasever=40
...
 clang16-devel                                                                      i686                                                    16.0.6-7.fc40                                                                  updates                                                  3.0 M
 clang16-devel                                                                      x86_64                                                  16.0.6-7.fc40                                                                  updates                                                  3.2 M
 clang16-libs                                                                       i686                                                    16.0.6-7.fc40                                                                  updates                                                   22 M
 clang16-libs                                                                       x86_64                                                  16.0.6-7.fc40                                                                  updates                                                   21 M
 clang16-resource-filesystem                                                        i686                                                    16.0.6-5.fc40                                                                  fedora                                                    12 k
 clang16-resource-filesystem                                                        x86_64                                                  16.0.6-5.fc40                                                                  fedora                                                    12 k
...

In that case, clang16-* gets upgraded to the 7 release from the updates repo, but clang16-resource-filesystem is getting to only the 5 release from the fedora repo.



Trying it out on a Fedora 40 container gets a mixed version:

$ podman run --rm -it fedora:40
# dnf install clang16-resource-filesystem.i686 clang16-resource-filesystem.x86_64
Last metadata expiration check: 0:00:16 ago on Tue Jun 11 03:33:41 2024.
Dependencies resolved.
==========================================================================================================================================================================================================================================================================================
 Package                                                                           Architecture                                                 Version                                                               Repository                                                     Size
==========================================================================================================================================================================================================================================================================================
Installing:
 clang16-resource-filesystem                                                       i686                                                         16.0.6-5.fc40                                                         fedora                                                         12 k
 clang16-resource-filesystem                                                       x86_64                                                       16.0.6-7.fc40                                                         updates                                                        12 k

Comment 2 Tulio Magno Quites Machado Filho 2024-06-11 12:55:33 UTC
Great findings, Elliott!

I looks like some i686 files were not properly uploaded to the repositories:

[ ]	clang16-16.0.6-7.fc40.i686.rpm	2024-05-21 22:27 	74K	 
[ ]	clang16-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	69K	 
[ ]	clang16-analyzer-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	51K	 
[ ]	clang16-devel-16.0.6-7.fc40.i686.rpm	2024-05-21 22:27 	3.0M	 
[ ]	clang16-devel-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	3.2M	 
[ ]	clang16-libs-16.0.6-7.fc40.i686.rpm	2024-05-21 22:27 	22M	 
[ ]	clang16-libs-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	21M	 
[ ]	clang16-resource-filesystem-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	12K	 
[ ]	clang16-tools-extra-16.0.6-7.fc40.i686.rpm	2024-05-21 22:27 	20M	 
[ ]	clang16-tools-extra-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	19M	 
[ ]	clang16-tools-extra-devel-16.0.6-7.fc40.i686.rpm	2024-05-21 22:27 	204K	 
[ ]	clang16-tools-extra-devel-16.0.6-7.fc40.x86_64.rpm	2024-05-21 22:27 	204K	

But they were generated correctly:

https://koji.fedoraproject.org/koji/buildinfo?buildID=2454748

Comment 3 Tulio Magno Quites Machado Filho 2024-06-11 14:00:15 UTC
It looks like there is no need for clang16-resource-filesystem to be arch-specific.
I believe this would be a better solution than trying to re-add the missing packages to the repositories.

Comment 4 Tulio Magno Quites Machado Filho 2024-06-11 18:26:51 UTC
I fix for this issue has been proposed in https://src.fedoraproject.org/rpms/clang16/pull-request/3

Comment 5 Fedora Update System 2024-06-14 13:01:28 UTC
FEDORA-2024-c269c19e7b (clang16-16.0.6-8.fc41) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-c269c19e7b

Comment 6 Fedora Update System 2024-06-14 13:05:23 UTC
FEDORA-2024-c269c19e7b (clang16-16.0.6-8.fc41) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 7 Elliott Sales de Andrade 2024-06-14 18:18:06 UTC
This is an F40 bug, so it should close when that update goes through. I can confirm that it's noarch now, but not yet that the system-upgrade goes through until it's in composes.

Comment 8 Fedora Update System 2024-06-14 18:20:43 UTC
FEDORA-2024-3fdaec615d (clang16-16.0.6-8.fc40) has been submitted as an update to Fedora 40.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-3fdaec615d

Comment 9 Tulio Magno Quites Machado Filho 2024-06-14 18:22:14 UTC
The F40 build just completed and is available for testing here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-3fdaec615d

Comment 10 Fedora Update System 2024-06-15 03:59:48 UTC
FEDORA-2024-3fdaec615d has been pushed to the Fedora 40 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-3fdaec615d`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-3fdaec615d

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2024-06-23 06:52:08 UTC
FEDORA-2024-3fdaec615d (clang16-16.0.6-8.fc40) has been pushed to the Fedora 40 stable repository.
If problem still persists, please make note of it in this bug report.