20111102

Yum GLib-CRITICAL error

Uno de estos días, intentando instalar un paquete en uno de los equipos CentOS (en este caso era un CentOS 4.2 bastante antiguo) que tengo, me he encontrado con el siguiente problema:
[root@server usuarios]# yum search package
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
(process:21149): GLib-CRITICAL **: file gtimer.c: line 106 (g_timer_stop): assertion `timer != NULL' failed
(process:21149): GLib-CRITICAL **: file gtimer.c: line 88 (g_timer_destroy): assertion `timer != NULL' failed
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 97, in main
    result, resultmsgs = do()
  File "/usr/share/yum-cli/cli.py", line 596, in doCommands
    return self.search()
  File "/usr/share/yum-cli/cli.py", line 1216, in search
    matching = self.searchPackages(searchlist, args, callback=self.matchcallback)
  File "__init__.py", line 1061, in searchPackages
  File "/usr/share/yum-cli/cli.py", line 75, in doRepoSetup
    self.doSackSetup(thisrepo=thisrepo)
  File "__init__.py", line 260, in doSackSetup
  File "repos.py", line 277, in populateSack
  File "/usr/lib64/python2.3/site-packages/sqlitecachec.py", line 40, in getPrimary
    self.repoid))
TypeError: Can not create index on requires table: near "NOT": syntax error

Para resolverlo lo que hice fue reinstalar el paquete yum. Antes de eso lo busqué dentro de la caché de yum en ese equipo y ahí estaba. Si no hubiese sido así, habría tenido que tirar de los mirrors de CentOS:
[root@server py]# cd  /var/cache/yum/
[root@server yum]# find . -iname "*yum*"
./update/packages/centos-yumconf-4-4.5.noarch.rpm
./update/packages/yum-2.4.2-2.centos4.noarch.rpm
./update/headers/centos-yumconf-4-4.5.noarch.hdr
./update/headers/yum-2.4.2-2.centos4.noarch.hdr
./base/packages/yum-2.4.3-3.el4.centos.noarch.rpm
./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm
./base/packages/yum-metadata-parser-1.0-8.el4.centos.x86_64.rpm
./base/headers/yum-metadata-parser-1.0-8.el4.centos.x86_64.hdr
./base/headers/yum-2.4.3-4.el4.centos.noarch.hdr
./base/headers/yum-2.4.3-3.el4.centos.noarch.hdr

Y ahora sólo resta reinstalar:
[root@server yum]# rpm -Uvh ./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm

Y a funcionar:
[root@server yum]# yum search fdupes
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
update    : ################################################## 1760/1760
Added 1760 new packages, deleted 0 old in 12.75 seconds
primary.xml.gz            100% |=========================| 715 kB    00:10    
base      : ################################################## 1844/1844
Added 781 new packages, deleted 725 old in 9.52 seconds
primary.xml.gz            100% |=========================|  192 B    00:00    
Added 0 new packages, deleted 0 old in 0.05 seconds
primary.xml.gz            100% |=========================|  42 kB    00:00    
extras    : ################################################## 149/149
Added 59 new packages, deleted 58 old in 0.45 seconds
No Matches found


Few day ago, I was trying to install a new package on one of my CentOS box (and old CentOS 4.2 server) when I got the following message::
[root@server usuarios]# yum search package
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
(process:21149): GLib-CRITICAL **: file gtimer.c: line 106 (g_timer_stop): assertion `timer != NULL' failed
(process:21149): GLib-CRITICAL **: file gtimer.c: line 88 (g_timer_destroy): assertion `timer != NULL' failed
Traceback (most recent call last):
  File "/usr/bin/yum", line 29, in ?
    yummain.main(sys.argv[1:])
  File "/usr/share/yum-cli/yummain.py", line 97, in main
    result, resultmsgs = do()
  File "/usr/share/yum-cli/cli.py", line 596, in doCommands
    return self.search()
  File "/usr/share/yum-cli/cli.py", line 1216, in search
    matching = self.searchPackages(searchlist, args, callback=self.matchcallback)
  File "__init__.py", line 1061, in searchPackages
  File "/usr/share/yum-cli/cli.py", line 75, in doRepoSetup
    self.doSackSetup(thisrepo=thisrepo)
  File "__init__.py", line 260, in doSackSetup
  File "repos.py", line 277, in populateSack
  File "/usr/lib64/python2.3/site-packages/sqlitecachec.py", line 40, in getPrimary
    self.repoid))
TypeError: Can not create index on requires table: near "NOT": syntax error

To solve this issue I reinstalled the yum package. I looked for it on the yum cache and there it was, but if not, I could download it from one of the CentOS mirrors:
[root@server py]# cd  /var/cache/yum/
[root@server yum]# find . -iname "*yum*"
./update/packages/centos-yumconf-4-4.5.noarch.rpm
./update/packages/yum-2.4.2-2.centos4.noarch.rpm
./update/headers/centos-yumconf-4-4.5.noarch.hdr
./update/headers/yum-2.4.2-2.centos4.noarch.hdr
./base/packages/yum-2.4.3-3.el4.centos.noarch.rpm
./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm
./base/packages/yum-metadata-parser-1.0-8.el4.centos.x86_64.rpm
./base/headers/yum-metadata-parser-1.0-8.el4.centos.x86_64.hdr
./base/headers/yum-2.4.3-4.el4.centos.noarch.hdr
./base/headers/yum-2.4.3-3.el4.centos.noarch.hdr

So lets reinstall it:
[root@server yum]# rpm -Uvh ./base/packages/yum-2.4.3-4.el4.centos.noarch.rpm

And now it works:
[root@server yum]# yum search fdupes
Searching Packages:
Setting up repositories
Reading repository metadata in from local files
update    : ################################################## 1760/1760
Added 1760 new packages, deleted 0 old in 12.75 seconds
primary.xml.gz            100% |=========================| 715 kB    00:10    
base      : ################################################## 1844/1844
Added 781 new packages, deleted 725 old in 9.52 seconds
primary.xml.gz            100% |=========================|  192 B    00:00    
Added 0 new packages, deleted 0 old in 0.05 seconds
primary.xml.gz            100% |=========================|  42 kB    00:00    
extras    : ################################################## 149/149
Added 59 new packages, deleted 58 old in 0.45 seconds
No Matches found

PS. I know, I know. My English is not good enought but, the more you help me, the more I learn.

No hay comentarios: