Rocky 9.3 to 9.4 upgrade: minor KDE hiccup and mariadb modular package infiltration

Only encountered ‘2’ issues with the 9.3 to 9.4 upgrade, using the ‘upacked’ ISO image and local reposync’d repositories:

The EPEL package (I had installed on my RL 9.3 KDE configuration) for kf5-libkdcraw requires/uses the RL provided LibRaw package…

RL 9.3 had LibRaw-0.20, but RL 9.4 provides LibRaw-0.21

Error:
 Problem: package kf5-libkdcraw-23.04.3-2.el9.x86_64 from @System requires libraw.so.20()(64bit), but none of the providers can be installed
  - cannot install both LibRaw-0.21.1-1.el9.x86_64 from Linux-Vendor-App-Updates and LibRaw-0.20.2-6.el9.x86_64 from @System
  - cannot install the best update candidate for package kf5-libkdcraw-23.04.3-2.el9.x86_64
  - cannot install the best update candidate for package LibRaw-0.20.2-6.el9.x86_64

Was able to obtain ‘just’ the newer kf5-libkdcraw package without affecting any other “requires”:
wget https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/Packages/k/kf5-libkdcraw-23.08.5-1.el9.x86_64.rpm

BUT, then the update to RL 9.4 attempted to corrupt the installation with ‘modular’ packages, for just “mariadb”.
Version 10.5 is provided by the RL 9.4 ‘base’ repo, but is ignored…

Transaction Summary
========================================================================================================================
Install   18 Packages
Upgrade  381 Packages
Remove     5 Packages

Total size: 933 M
Is this ok [y/N]: y
Downloading Packages:
Running transaction check
No available modular metadata for modular package 'mariadb-3:10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64', it cannot be installed on the system
No available modular metadata for modular package 'mariadb-common-3:10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64', it cannot be installed on the system
No available modular metadata for modular package 'mariadb-errmsg-3:10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64', it cannot be installed on the system
No available modular metadata for modular package 'mariadb-server-3:10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64', it cannot be installed on the system
Error: No available modular metadata for modular package

I could not find any ‘setting’ that was permitting the modular abomination to be included in the update, so I has to resort to using an ‘exclude’ option on the command:

sudo yum --exclude=mariadb\* update

Both the “base” version, and the “modular” one are in the Appstream repo (but the “base” version which is the same as provided by RL 9.3 was not updated):

workstation:/tmp> sudo yum list mariadb
Last metadata expiration check: 1:26:33 ago on Thu 23 May 2024 02:03:55 PM MDT.
Installed Packages
mariadb.x86_64                    3:10.5.22-1.el9_2                                            @Linux-Appstream-Updates
Available Packages
mariadb.x86_64                    3:10.11.6-1.module+el9.4.0+20012+a68bdff7                    Linux-Appstream-Updates
workstation:/nfs/appstream/m> ls -l mariadb-10*
-rw-r--r-- 1 root admin 1778693 May  2 02:47 mariadb-10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64.rpm
-rw-r--r-- 1 root admin 1635168 Oct 12  2023 mariadb-10.5.22-1.el9_2.x86_64.rpm

Though the upgrade to RL 9.4 completed successfully, any attempt to perform package updates still present the modular abomination packages…

workstation:/> sudo yum update

Last metadata expiration check: 1:03:57 ago on Thu 23 May 2024 02:03:55 PM MDT.
Dependencies resolved.
========================================================================================================================
 Package              Architecture Version                                         Repository                      Size
========================================================================================================================
Upgrading:
 mariadb              x86_64       3:10.11.6-1.module+el9.4.0+20012+a68bdff7       Linux-Vendor-App-Updates       1.7 M
 mariadb-common       x86_64       3:10.11.6-1.module+el9.4.0+20012+a68bdff7       Linux-Vendor-App-Updates        28 k
 mariadb-errmsg       x86_64       3:10.11.6-1.module+el9.4.0+20012+a68bdff7       Linux-Vendor-App-Updates       254 k
 mariadb-server       x86_64       3:10.11.6-1.module+el9.4.0+20012+a68bdff7       Linux-Vendor-App-Updates        10 M

Transaction Summary
========================================================================================================================
Upgrade  4 Packages

Total size: 12 M
Is this ok [y/N]: N
Operation aborted.

Did you sync the repositories locally? How did you sync them? In normal circumstances, the modular packages should never be asked to install unless:

A) You have enabled the module using dnf module enable
B) You are using custom repositories where modular metadata is missing

With the case of B, this happens when packages are synced but then a createrepo is ran, which destroys all applicable metadata, especially for repository groups and modules. Or, the application that is syncing the repositories is not keeping the data intact upon sync.

‘B’
BUT, I have been using the ‘reposync’ (and ‘createrepo’) method for all the RL 9.x releases without issue.

I have no ‘modular’ packages within my installed O/S’s and haven’t encountered ‘this’ issue since giving up on the 8.x releases (which I considered to be a ‘mess’)

Why only the ‘mariadb-*’ packages ? Is there a possibility of an issue with ‘them’ ?

I DO see that there were NOT any modular packages for mariadb in the RL 9.3 release…

/appstream/rocky-9.3-x86_64/m> ls -l mariadb-*
-rw-r--r-- 1 root admin  1635168 Oct 12  2023 mariadb-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin  6763013 Oct 12  2023 mariadb-backup-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin    27971 Oct 12  2023 mariadb-common-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin   209897 May 26  2022 mariadb-connector-c-3.2.6-1.el9_0.i686.rpm
-rw-r--r-- 1 root admin   199958 May 26  2022 mariadb-connector-c-3.2.6-1.el9_0.x86_64.rpm
-rw-r--r-- 1 root admin     9999 May 26  2022 mariadb-connector-c-config-3.2.6-1.el9_0.noarch.rpm
-rw-r--r-- 1 root admin    55909 May 26  2022 mariadb-connector-c-devel-3.2.6-1.el9_0.i686.rpm
-rw-r--r-- 1 root admin    55889 May 26  2022 mariadb-connector-c-devel-3.2.6-1.el9_0.x86_64.rpm
-rw-r--r-- 1 root admin   114957 May 25  2022 mariadb-connector-odbc-3.1.12-3.el9.x86_64.rpm
-rw-r--r-- 1 root admin  5616379 Oct 12  2023 mariadb-embedded-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin   216194 Oct 12  2023 mariadb-errmsg-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin    15200 Oct 12  2023 mariadb-gssapi-server-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin   990288 May 11  2022 mariadb-java-client-3.0.3-1.el9.noarch.rpm
-rw-r--r-- 1 root admin    82927 Oct 12  2023 mariadb-oqgraph-engine-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin    24028 Oct 12  2023 mariadb-pam-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin 10024703 Oct 12  2023 mariadb-server-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin    24878 Oct 12  2023 mariadb-server-galera-10.5.22-1.el9_2.x86_64.rpm
-rw-r--r-- 1 root admin   215154 Oct 12  2023 mariadb-server-utils-10.5.22-1.el9_2.x86_64.rpm

Can you try
dnf module list mariadb

Yes, I tried previously (above), but here it is again…

workstation2:/> sudo dnf list mariadb

Last metadata expiration check: 2:22:18 ago on Thu 23 May 2024 02:03:55 PM MDT.
Installed Packages
mariadb.x86_64                    3:10.5.22-1.el9_2                                            @Linux-Appstream-Updates
Available Packages
mariadb.x86_64                    3:10.11.6-1.module+el9.4.0+20012+a68bdff7                    Linux-Appstream-Updates

Oooops… what a fool you must think of me…

workstation:/> sudo dnf module list mariadb
Last metadata expiration check: 2:25:22 ago on Thu 23 May 2024 02:03:55 PM MDT.
Error: No matching Modules to list

You are showing zero modules, which does not match our standard repositories. This means your reposync is not bringing in the required metadata and/or you are running createrepo on the set of packages synced.

[root@xmpp01 ~]# dnf module list mariadb
Last metadata expiration check: 1:26:31 ago on Thu 23 May 2024 02:10:41 PM MST.
Rocky Linux 9 - AppStream
Name          Stream       Profiles                         Summary
mariadb       10.11        client, galera, server [d]       MariaDB Module
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
[root@xmpp01 ~]#

Without this modular data, you won’t be able to properly isolate those packages away from the base packages nor will you be able to install modular packages if you so chose.

Ah yes, the command with ‘module’ was the one I wanted you to check. As @nazunalika says, this does not look normal.

Oh queso…

I re-ran MY resposync script (which is a very nice and intelligent script) to ensure that I have the latest packages downloaded to MY local repositories…

THEN, I replicated the corresponding “repodata” contents from the same mirror-site…

Now, the ‘modular’ abomination does not ‘appear’ on the package update list…


workstation:/> sudo yum update
Linux-application-patch-updates                                                         3.9 MB/s | 7.9 MB     00:02
Linux-Vendor-Additions                                                                  5.2 MB/s | 692 kB     00:00
Linux-Kickstart-Distribution                                                            4.6 MB/s | 2.2 MB     00:00
Linux-patch-updates                                                                     2.3 MB/s | 1.9 MB     00:00
Linux-Yum-additions                                                                      25 kB/s | 6.2 kB     00:00
Extra Packages for Enterprise Linux 9 - x86_64                                          8.8 MB/s |  21 MB     00:02
Extra Packages for Enterprise Linux 9 openh264 (From Cisco) - x86_64                    2.0 kB/s | 2.5 kB     00:01
Rocky Linux 9 - CRB                                                                     2.1 MB/s | 2.4 MB     00:01
RPM Fusion for EL 9 - Free - Updates                                                    201 kB/s | 221 kB     00:01
Dependencies resolved.
Nothing to do.
Complete!

I confirmed that ‘both’ versions of the Maria DB packages were still in the repository:


workstation:/> ls -l /nfs/appstream/m/mariadb-10*
-rw-r--r-- 1 root admin 1778693 May  2 02:47 /nfs/appstream/m/mariadb-10.11.6-1.module+el9.4.0+20012+a68bdff7.x86_64.rpm
-rw-r--r-- 1 root admin 1635168 Oct 12  2023 /nfs/appstream/m/mariadb-10.5.22-1.el9_2.x86_64.rpm

And now, the DNF commands show the proper results…

workstation:/> sudo dnf list mariadb
Last metadata expiration check: 0:00:25 ago on Fri 24 May 2024 01:00:49 PM MDT.
Installed Packages
mariadb.x86_64             3:10.5.22-1.el9_2             @Linux-Appstream-Updates

workstation:/> sudo dnf module list mariadb
Last metadata expiration check: 0:00:41 ago on Fri 24 May 2024 01:00:49 PM MDT.
Linux-application-patch-updates
Name                    Stream                 Profiles                                   Summary
mariadb                 10.11                  client, galera, server [d]                 MariaDB Module

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

There is great joy…