[Yum] Bug in yum-skip-broken (was : yum doesn't look for provides on packages to be installed)
Tim Lauridsen
tla at rasmil.dk
Wed Oct 10 12:54:52 UTC 2007
On Wed, 2007-10-10 at 09:10 +0700, Fajar A. Nugraha wrote:
> seth vidal wrote:
> > On Tue, 2007-10-09 at 14:44 +0700, Fajar A. Nugraha wrote:
> >
> >> I understand that yum will search for shortest package name to look for
> >> providing package, but in this case I specified that I want to install
> >> MySQL-shared on the command line. Shouldn't that be processed first?
> >> Seeing that MySQL-shared is on command line, shouldn't it chose that
> >> instead of mysql?
> >>
> >> Excluding mysql works as expected.
> >>
> >> # yum -d1 install MySQL-shared MySQL-shared-compat MySQL-client
> >> MySQL-server --exclude mysql
> >>
> >> =============================================================================
> >> Package Arch Version Repository Size
> >> =============================================================================
> >> Installing:
> >> MySQL-client x86_64 5.0.45-0.glibc23 mysql
> >> 350 k
> >> MySQL-server x86_64 5.0.45-0.glibc23 mysql
> >> 15 M
> >> MySQL-shared-compat x86_64 5.0.45-0.glibc23 mysql
> >> 3.1 M
> >> Installing for dependencies:
> >> MySQL-shared x86_64 5.0.45-0.glibc23 mysql
> >> 1.7 M
> >> perl-DBI x86_64 1.52-1.fc6 base 605 k
> >>
> >> Transaction Summary
> >> =============================================================================
> >> Install 5 Package(s)
> >> Update 0 Package(s)
> >> Remove 0 Package(s)
> >>
> >>
> >
> > Can you try the exact same thing with 3.2.6, please?
> >
> >
>
> The same thing happened with 3.2.6.
> However, upon further investigation, it seems the bug was in
> yum-skip-broken plugin.
> Previously I had
>
> check_always = 1
>
> on /etc/yum/pluginconf.d/skip-broken.conf. Now I change it to
>
> check_always = 0
>
> Without skip-broken activated (this is OK):
> # yum install MySQL-shared MySQL-shared-compat MySQL-client MySQL-server
> Loading "priorities" plugin
> Loading "installonlyn" plugin
> Loading "skip-broken" plugin
> logos 100% |=========================| 951 B 00:00
> dag 100% |=========================| 951 B 00:00
> centos 100% |=========================| 951 B 00:00
> testing 100% |=========================| 951 B 00:00
> base 100% |=========================| 1.1 kB 00:00
> updates 100% |=========================| 1.1 kB 00:00
> mysql 100% |=========================| 951 B 00:00
> local 100% |=========================| 951 B 00:00
> 3670 packages excluded due to repository priority protections
> Setting up Install Process
> Parsing package install arguments
> Resolving Dependencies
> --> Running transaction check
> ---> Package MySQL-client.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Processing Dependency: perl(DBI) for package: MySQL-client
> ---> Package MySQL-shared-compat.x86_64 0:5.0.45-0.glibc23 set to be updated
> ---> Package MySQL-server.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Running transaction check
> ---> Package perl-DBI.x86_64 0:1.52-1.fc6 set to be updated
> --> Finished Dependency Resolution
>
> Dependencies Resolved
>
> =============================================================================
> Package Arch Version Repository Size
> =============================================================================
> Installing:
> MySQL-client x86_64 5.0.45-0.glibc23 mysql
> 350 k
> MySQL-server x86_64 5.0.45-0.glibc23 mysql
> 15 M
> Installing for dependencies:
> MySQL-shared-compat x86_64 5.0.45-0.glibc23 mysql
> 3.1 M
> perl-DBI x86_64 1.52-1.fc6 base 605 k
>
> Transaction Summary
> =============================================================================
> Install 4 Package(s)
> Update 0 Package(s)
> Remove 0 Package(s)
>
>
> MySQl-shared compat also provides MySQL-shared, so the above output is
> correct.
> However, with skip-broken activated :
>
> # yum --skip-broken install MySQL-shared MySQL-shared-compat
> MySQL-client MySQL-server
> Loading "priorities" plugin
> Loading "installonlyn" plugin
> Loading "skip-broken" plugin
> logos 100% |=========================| 951 B 00:00
> dag 100% |=========================| 951 B 00:00
> centos 100% |=========================| 951 B 00:00
> testing 100% |=========================| 951 B 00:00
> base 100% |=========================| 1.1 kB 00:00
> updates 100% |=========================| 1.1 kB 00:00
> mysql 100% |=========================| 951 B 00:00
> local 100% |=========================| 951 B 00:00
> 3670 packages excluded due to repository priority protections
> Setting up Install Process
> Parsing package install arguments
> Resolving Dependencies
> **** Checking packages for dependency problems
> **** Checking for dep problems : MySQL-client - 5.0.45-0.glibc23.x86_64
> --> Running transaction check
> ---> Package MySQL-client.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Processing Dependency: libmysqlclient.so.15()(64bit) for package:
> MySQL-client
> --> Processing Dependency: perl(DBI) for package: MySQL-client
> --> Processing Dependency:
> libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: MySQL-client
> --> Running transaction check
> ---> Package mysql.x86_64 0:5.0.22-2.1.0.1 set to be updated
> ---> Package perl-DBI.x86_64 0:1.52-1.fc6 set to be updated
> --> Finished Dependency Resolution
> **** OK : mysql.x86_64 0-5.0.22-2.1.0.1 - u
> **** OK : perl-DBI.x86_64 0-1.52-1.fc6 - u
> **** OK : MySQL-client.x86_64 0-5.0.45-0.glibc23 - u
> **** Checking for dep problems : MySQL-shared-compat -
> 5.0.45-0.glibc23.x86_64
> --> Running transaction check
> ---> Package MySQL-shared-compat.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Finished Dependency Resolution
> **** OK : MySQL-shared-compat.x86_64 0-5.0.45-0.glibc23 - u
> **** Checking for dep problems : MySQL-server - 5.0.45-0.glibc23.x86_64
> --> Running transaction check
> ---> Package MySQL-server.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Processing Dependency: libmysqlclient.so.15()(64bit) for package:
> MySQL-server
> --> Processing Dependency:
> libmysqlclient.so.15(libmysqlclient_15)(64bit) for package: MySQL-server
> --> Processing Dependency: perl(DBI) for package: MySQL-server
> --> Running transaction check
> ---> Package mysql.x86_64 0:5.0.22-2.1.0.1 set to be updated
> ---> Package perl-DBI.x86_64 0:1.52-1.fc6 set to be updated
> --> Processing Conflict: mysql conflicts MySQL
> --> Finished Dependency Resolution
> **** Failed
> **** mysql conflicts with MySQL
> **** Packages with dependency resolving errors
> **** MySQL-server - 5.0.45-0.glibc23.x86_64
> **** 2
> **** End Checking packages for dependency problems
> --> Running transaction check
> ---> Package mysql.x86_64 0:5.0.22-2.1.0.1 set to be updated
> ---> Package perl-DBI.x86_64 0:1.52-1.fc6 set to be updated
> ---> Package MySQL-client.x86_64 0:5.0.45-0.glibc23 set to be updated
> ---> Package MySQL-shared-compat.x86_64 0:5.0.45-0.glibc23 set to be updated
> --> Finished Dependency Resolution
>
> Dependencies Resolved
>
> =============================================================================
> Package Arch Version Repository Size
> =============================================================================
> Installing:
> MySQL-client x86_64 5.0.45-0.glibc23 mysql
> 350 k
> Installing for dependencies:
> MySQL-shared-compat x86_64 5.0.45-0.glibc23 mysql
> 3.1 M
> mysql x86_64 5.0.22-2.1.0.1 updates 3.0 M
> perl-DBI x86_64 1.52-1.fc6 base 605 k
>
> Transaction Summary
> =============================================================================
> Install 4 Package(s)
> Update 0 Package(s)
> Remove 0 Package(s)
>
>
> Adding --skip-broken --exclude mysql gives the same result as I posted
> earlier, in which it works, but MySQL-shared was also installed (It
> shouldn't have, since MySQL-shared-compat also provides MySQL-shared,
> but apparently no harm done)
>
> Regards,
>
> Fajar
> _______________________________________________
> Yum mailing list
> Yum at lists.dulug.duke.edu
> https://lists.dulug.duke.edu/mailman/listinfo/yum
Weird, what skip-broken does is run the yum depsolve with each package
in the transaction, skip the ones there don't depsolve without errors.
I this case i looks like MySQL-server don't desolve alone.
So 'yum install MySQL-server' should fail to.
Tim
More information about the Yum
mailing list