yum remove and cyclic dependencies

Luciano Miguel Ferreira Rocha strange at nsk.no-ip.org
Tue Feb 1 14:35:50 UTC 2005


Hello,

Yum (2.1.12-0.fc3) doesn't like cyclic dependencies on packages to be
removed and fails.

Example:
# rpm -e  mysql
error: Failed dependencies:
    libmysqlclient.so.10 is needed by (installed) perl-DBD-MySQL-2.9003-5.i386
....
# rpm -e perl-DBD-MySQL
error: Failed dependencies:
    perl-DBD-MySQL is needed by (installed) mysql-3.23.58-13.i386
# yum remove mysql
...
--> Processing Dependency: libmysqlclient.so.10 for package: MyODBC
--> Processing Dependency: mysql = 3.23.58 for package: mysql-devel
--> Processing Dependency: libmysqlclient.so.10 for package: perl-DBD-MySQL
--> Processing Dependency: mysql for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: dovecot
--> Processing Dependency: libmysqlclient_r.so.10 for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: libdbi-dbd-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package MyODBC.i386 0:2.50.39-19 set to be erased
---> Package mysql-devel.i386 0:3.23.58-13 set to be erased
---> Package perl-DBD-MySQL.i386 0:2.9003-5 set to be erased
---> Package MySQL-python.i386 0:0.9.2-4 set to be erased
---> Package dovecot.i386 0:0.99.11-1.FC3.4 set to be erased
---> Package mysql.i386 0:3.23.58-14 set to be updated
---> Package libdbi-dbd-mysql.i386 0:0.6.5-9 set to be erased
--> Running transaction check
--> Processing Dependency: perl-DBD-MySQL for package: mysql
--> Finished Dependency Resolution
Error: missing dep: perl-DBD-MySQL for pkg mysql

# yum remove  perl-DBD-MySQL
Setting up Remove Process
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package perl-DBD-MySQL.i386 0:2.9003-5 set to be erased
--> Running transaction check
Setting up Repo:  base
Setting up Repo:  updates-released
Reading repository metadata in from local files
--> Processing Dependency: perl-DBD-MySQL for package: mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package mysql.i386 0:3.23.58-13 set to be erased
--> Running transaction check
--> Processing Dependency: libmysqlclient.so.10 for package: MyODBC
--> Processing Dependency: mysql = 3.23.58 for package: mysql-devel
--> Processing Dependency: mysql for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: dovecot
--> Processing Dependency: libmysqlclient_r.so.10 for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: libdbi-dbd-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package MyODBC.i386 0:2.50.39-19 set to be erased
---> Package mysql-devel.i386 0:3.23.58-13 set to be erased
---> Package MySQL-python.i386 0:0.9.2-4 set to be erased
---> Package dovecot.i386 0:0.99.11-1.FC3.4 set to be erased
---> Package mysql.i386 0:3.23.58-14 set to be updated
---> Package libdbi-dbd-mysql.i386 0:0.6.5-9 set to be erased
--> Running transaction check
--> Processing Dependency: perl-DBD-MySQL for package: mysql
--> Finished Dependency Resolution
Error: missing dep: perl-DBD-MySQL for pkg mysql

# yum remove  perl-DBD-MySQL mysql
Setting up Remove Process
Resolving Dependencies
--> Populating transaction set with selected packages. Please wait.
---> Package perl-DBD-MySQL.i386 0:2.9003-5 set to be erased
---> Package mysql.i386 0:3.23.58-13 set to be erased
--> Running transaction check
Setting up Repo:  base
Setting up Repo:  updates-released
Reading repository metadata in from local files
--> Processing Dependency: libmysqlclient.so.10 for package: MyODBC
--> Processing Dependency: mysql = 3.23.58 for package: mysql-devel
--> Processing Dependency: mysql for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: dovecot
--> Processing Dependency: libmysqlclient_r.so.10 for package: MySQL-python
--> Processing Dependency: libmysqlclient.so.10 for package: libdbi-dbd-mysql
--> Restarting Dependency Resolution with new changes.
--> Populating transaction set with selected packages. Please wait.
---> Package MyODBC.i386 0:2.50.39-19 set to be erased
---> Package mysql-devel.i386 0:3.23.58-13 set to be erased
---> Package MySQL-python.i386 0:0.9.2-4 set to be erased
---> Package dovecot.i386 0:0.99.11-1.FC3.4 set to be erased
---> Package mysql.i386 0:3.23.58-14 set to be updated
---> Package libdbi-dbd-mysql.i386 0:0.6.5-9 set to be erased
--> Running transaction check
--> Processing Dependency: perl-DBD-MySQL for package: mysql
--> Finished Dependency Resolution
Error: missing dep: perl-DBD-MySQL for pkg mysql

Also, yum remove ignores silently unknown packages passed as argument.
(And yum remove .... >& out outputs stderr before any stdout!)

Regards,
Luciano Rocha
-- 
3/13




More information about the test mailing list