Bug 31909 - Strange error message from dnf: '/usr/lib64/gconv/gconv-modules.cache' not found
Summary: Strange error message from dnf: '/usr/lib64/gconv/gconv-modules.cache' not found
Status: NEW
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 9
Hardware: All Linux
Priority: Normal normal
Target Milestone: ---
Assignee: All Packagers
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-05-10 20:33 CEST by Ulrich Beckmann
Modified: 2024-05-01 14:45 CEST (History)
4 users (show)

See Also:
Source RPM: glibc, dnf-4.14.0-1.mga9.src.rpm
CVE:
Status comment:


Attachments
Exerpt of dnf output (96.38 KB, text/plain)
2023-05-10 20:35 CEST, Ulrich Beckmann
Details
dnf configuration (2.34 KB, text/plain)
2023-05-10 20:39 CEST, Ulrich Beckmann
Details

Description Ulrich Beckmann 2023-05-10 20:33:55 CEST
I have seen this confusing error message in the last line of the output of dnf in Cauldron quite a lot.

Complete!
Error: Missing /usr/lib64/gconv/gconv-modules.cache file.n[root@mga9-vm-alpha ~]#

The transaction itself was always complete, confirmed by dnf history and snapper. I did never spot any regression. 

Now the message occured again. My guess is that it occurs when there is an update of the package glibc. The file itself is not found. Previously it was there.

Ulrich
Comment 1 Ulrich Beckmann 2023-05-10 20:35:25 CEST
Created attachment 13826 [details]
Exerpt of dnf output
Comment 2 Ulrich Beckmann 2023-05-10 20:39:45 CEST
Created attachment 13827 [details]
dnf configuration
Comment 3 Lewis Smith 2023-05-16 12:27:10 CEST
Thank you for the report.
 $ urpmf /usr/lib64/gconv/gconv-modules.cache
 glibc:/usr/lib64/gconv/gconv-modules.cache

Can you say how long you have noticed this? DNF was last updated in September 2022.

Your specific tests certainly point the finger of suspicion at glibc updates.
  Preparing        :                                                                                                                                                  1/1
  Upgrading        : glibc-6:2.36-24.mga9.x86_64                                                                                                                     1/87
  Running scriptlet: glibc-6:2.36-24.mga9.x86_64
...
Complete!
Error: Missing /usr/lib64/gconv/gconv-modules.cache file.n

Assigning initially to tmb who updates glibc.
But if it is a DNF problem...

CC: (none) => lewyssmith
Assignee: bugsquad => tmb
Source RPM: glibc => glibc, dnf-4.14.0-1.mga9.src.rpm

Comment 4 Ulrich Beckmann 2023-05-19 19:41:38 CEST
(In reply to Lewis Smith from comment #3)
> Thank you for the report.
>  $ urpmf /usr/lib64/gconv/gconv-modules.cache
>  glibc:/usr/lib64/gconv/gconv-modules.cache
> 
> Can you say how long you have noticed this? DNF was last updated in
> September 2022.

The message was well before Sept. 2022. Unfortunately this instance does not exist any longer.

Update to glibc-2.36-40.mga9.x86_64 on May 18 shows the issue again.
Lewis Smith 2023-05-21 21:14:50 CEST

CC: lewyssmith => (none)

Comment 5 Ulrich Beckmann 2023-09-21 20:46:31 CEST
Switched version to Mageia 9.

The message also occurred when testing https://bugs.mageia.org/show_bug.cgi?id=32292

See Also: (none) => https://bugs.mageia.org/show_bug.cgi?id=32292
Version: Cauldron => 9

Comment 6 katnatek 2023-09-22 01:43:23 CEST
The message is also produced testing updates in https://bugs.mageia.org/show_bug.cgi?id=32230
Comment 7 katnatek 2023-09-22 02:00:53 CEST
Our dnf is outdated https://github.com/rpm-software-management/dnf/releases/tag/4.17.0 but i not think that is the cause of the bug
Comment 8 katnatek 2023-09-22 19:32:33 CEST
The message is also produced testing updates in https://bugs.mageia.org/show_bug.cgi?id=32230 for i586

Error: Missing /usr/lib/gconv/gconv-modules.cache file.n
Comment 9 Jens Persson 2023-09-30 20:31:11 CEST
(In reply to katnatek from comment #7)
> Our dnf is outdated
> https://github.com/rpm-software-management/dnf/releases/tag/4.17.0 but i not
> think that is the cause of the bug

Yeah I get segfaults on every new install now from DNF. Needs updating ASAP.

CC: (none) => xerxes2

Comment 10 Ulrich Beckmann 2023-10-20 14:37:27 CEST
(In reply to Jens Persson from comment #9)
> (In reply to katnatek from comment #7)
> > Our dnf is outdated
> > https://github.com/rpm-software-management/dnf/releases/tag/4.17.0 but i not
> > think that is the cause of the bug
> 
> Yeah I get segfaults on every new install now from DNF. Needs updating ASAP.

Please, open a new bug report.
I see nothing of the sort. I also use dnf for QA testing and 2 installations and 2 VMs.

Ulrich
Comment 11 Eric Petit 2024-04-12 20:41:44 CEST
Hi,
i didn't have DNF issue, but missing file still here in MGA9.
urpmi glibc --replacepkgs

$MIRRORLIST: media/core/updates/glibc-2.36-52.mga9.x86_64.rpm
installation de glibc-2.36-52.mga9.x86_64.rpm depuis /var/cache/urpmi/rpms
Préparation... ##############################################################################
1/1: glibc ##############################################################################
1/1: désinstallation de glibc-6:2.36-52.mga9.x86_64
##############################################################################
Vous devriez relancer votre ordinateur pour glibc
Error: Missing /usr/lib64/gconv/gconv-modules.cache file

CC: (none) => surfzoid

Comment 12 katnatek 2024-04-13 04:24:57 CEST
Change assignment to all packagers

Assignee: tmb => pkg-bugs

Comment 13 Eric Petit 2024-04-26 08:21:31 CEST
The bug is in the post script, perhaps you need to log the error better than an "else 'error file missing'

If i do manualy :
/usr/sbin/iconvconfig -o /usr/lib64/gconv/gconv-modules.cache  --nostdlib /usr/lib64/gconv

then

file /usr/lib64/gconv/gconv-modules.cache
/usr/lib64/gconv/gconv-modules.cache: gconv module configuration cache data
Comment 14 Dave Hodgins 2024-04-26 21:32:33 CEST
My understanding is that the use of the cache is optional.

Looking at "rpm -q --scripts glibc", if you want it, run
"touch /usr/lib64/gconv/gconv-modules.cache" (as root), then re-install
glibc with
"urpmi --replacepkgs --replacefiles glibc".

That would be "touch /usr/lib/gconv/gconv-modules.cache" on a 32 bit install.

CC: (none) => davidwhodgins

Comment 15 Pascal Terjan 2024-04-26 22:20:53 CEST
That code is a bit strange, it says basically "If the file is there update it, else display an error" while it should either always update it or just be silent if it's fine for it to not be there.


This comes from Fedora and has been there for years: https://src.fedoraproject.org/rpms/glibc/blob/rawhide/f/glibc.spec#_143

CC: (none) => pterjan

Comment 16 Eric Petit 2024-04-27 08:36:23 CEST
(In reply to Dave Hodgins from comment #14)
> My understanding is that the use of the cache is optional.
> 
> Looking at "rpm -q --scripts glibc", if you want it, run
> "touch /usr/lib64/gconv/gconv-modules.cache" (as root), then re-install
> glibc with
> "urpmi --replacepkgs --replacefiles glibc".
> 
> That would be "touch /usr/lib/gconv/gconv-modules.cache" on a 32 bit install.

there is 2 things, rpm whose update gconv cache if present and the post script inside the spec file of glib
Comment 17 Eric Petit 2024-04-27 08:42:19 CEST
(In reply to Pascal Terjan from comment #15)
> That code is a bit strange, it says basically "If the file is there update
> it, else display an error" while it should either always update it or just
> be silent if it's fine for it to not be there.
> 
> 
> This comes from Fedora and has been there for years:
> https://src.fedoraproject.org/rpms/glibc/blob/rawhide/f/glibc.spec#_143

yes.
i suggest to simplify like that:
%post
/usr/sbin/iconvconfig -o %{_libdir}/gconv/gconv-modules.cache  --nostdlib %{_libdir}/gconv
Comment 18 Eric Petit 2024-05-01 14:45:24 CEST
Hi, another issue is with mock build rpm
with a fresh mock build space
mock -r mageia-9-aarch64 --no-clean --no-cleanup-after --rebuild $FsName
will give this error :

Failed:
  dbus-1.14.6-1.mga9.aarch64           rpm-1:4.18.2-1.mga9.aarch64        sgml-common-0.6.3-29.mga9.noarch       
  systemd-253.16-1.mga9.aarch64       

Error: Transaction failed
Error: Missing /usr/lib64/gconv/gconv-modules.cache file.n

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