Re: Bug in yum-skip-broken (was : yum doesn't look for provides on packages to be installed)

Tim Lauridsen <[email protected]>
Newsgroups gmane.linux.rpm.yum
Message-ID <[email protected]>
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
> [email protected]
> 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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.