Painful Yum dependencies on CentOS6.3
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Percona Server moved to https://jira.percona.com/projects/PS |
Invalid
|
High
|
Ignacio Nin | |
| 5.1 |
Fix Released
|
High
|
Ignacio Nin | |
| 5.5 |
Fix Released
|
High
|
Ignacio Nin | |
| 5.6 |
Invalid
|
High
|
Ignacio Nin | |
| Percona Toolkit moved to https://jira.percona.com/projects/PT |
Fix Released
|
High
|
Daniel Nichter | |
| Percona XtraDB Cluster moved to https://jira.percona.com/projects/PXC |
Fix Released
|
High
|
Ignacio Nin |
Bug Description
(Probably a Percona-Server packaging issue, but reporting it here because it manifests in a percona-toolkit install)
I have a stock CentOS6.3 install
%> cat /etc/centos-release
CentOS release 6.3 (Final)
%> uname -r
2.6.32-
With the Percona Yum repository package:
%> yum info percona-release
Loaded plugins: fastestmirror, priorities, security
Loading mirror speeds from cached hostfile
* base: mirror.stanford.edu
* extras: mirrors.kernel.org
* updates: mirrors.kernel.org
68 packages excluded due to repository priority protections
Installed Packages
Name : percona-release
Arch : x86_64
Version : 0.0
Release : 1
Size : 3.6 k
Repo : installed
Summary : Percona RPM repository
URL : http://
License : GPL version 2
Description : Percona release file. This package contains yum
: configuration for the Percona RPM Repository, as well as the public
: GPG keys used to sign them.
I have the following packages installed:
%> rpm -qa |grep -i percona
Percona-
percona-
Percona-
Percona-
(installed via: `yum install Percona-
Trying to install percona-toolkit, I get the following:
%> yum install percona-toolkit
...
Transaction Check Error:
file /usr/lib64/
file /usr/lib64/
Error Summary
-------------
If I look at:
%> yum deplist perl-DBD-MySQL
...
dependency: libmysqlclient.
provider: mysql-libs.x86_64 5.1.61-4.el6
provider: Percona-
provider: Percona-
...
We see that perl-DBD-MySQL requires libmysqlclient.
I can get around this by installing packages in the following order:
%> rpm -qa |grep -i percona
percona-
%> yum install Percona-
...
%> yum install Percona-
...
But it's a pain to have to do this every time, I'd rather have the dependencies *just work*
Related branches
- Laurynas Biveinis (community): Approve on 2013-04-03
-
Diff: 27 lines (+5/-1)1 file modifiedbuild/percona-sql-50.spec (+5/-1)
- Percona core: Pending requested 2013-03-09
-
Diff: 22 lines (+5/-4)1 file modifiedbuild/percona-server.spec (+5/-4)
- Percona core: Pending requested 2013-03-09
-
Diff: 33 lines (+6/-1)2 files modifiedbuild/percona-server.spec (+2/-1)
build/percona-shared-compat.spec (+4/-0)
- Raghavendra D Prabhu (community): Approve on 2013-04-01
-
Diff: 61 lines (+9/-4)2 files modifiedbuild/percona-shared-compat.spec (+4/-0)
build/percona-xtradb-cluster.spec (+5/-4)
Jaime Crespo (jynus) wrote : | #1 |
I do the following generally and it works fine:
rpm --nodeps -e mysql-libs
yum install 'Percona-
yum install Percona-
The issue I see in the description is that percona-toolkit requires mysql client libs but ends up pulling Percona-Server-51 which introduces conflict. I usually end up installing shared-compat with others.
Problems being:
1. RPM lacks anything like package A replaces package B kind of thing (or is there something similar?), so 'rpm -e --nodeps mysql-libs' required.
2. We can have groups like the ones already present -- 'MySQL Database server' and 'MySQL Database client' so that install hackery can be avoided.
Daniel Nichter (daniel-nichter) wrote : | #3 |
Hi Ryan. :-) We recently had a long internal email thread about this. You know I don't know much about packaging, which is why I've asked Brian to work with Ignacio to take over our packaging. So, the hope is to have that done by next release, and whatever these problems are be solved (I don't know much about package dependencies and how one pkg can substitute for another, etc., so I'm trusting other experts know).
Changed in percona-toolkit: | |
status: | New → Confirmed |
importance: | Undecided → High |
assignee: | nobody → Brian Fraser (fraserbn) |
tags: | added: release |
Changed in percona-toolkit: | |
milestone: | none → 2.1.4 |
Changed in percona-toolkit: | |
assignee: | Brian Fraser (fraserbn) → Ignacio Nin (ignacio-nin) |
This is a bug with Percona-Server and not percona-toolkit actually.
sudo repoquery --provides Percona-
Percona-
Percona-
libmysqlcli
libtool(
libtool(
libtool(
mysql-shared
raghu archie:~ [77]% sudo repoquery --provides Percona-
MySQL-shared
Percona-
Percona-
Percona-
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
mysql-libs
mysql-shared
raghu archie:~ [78]% sudo repoquery --provides Percona-
MySQL-shared
Percona-
Percona-
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
mysql-libs
sudo repoquery --disablerepo=
config(
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
mysql-libs = 5.1.61-4.el6
mysql-
config(
libmysqlcli
libmysqlcli
libmysqlcli
libmysqlcli
mysql-libs = 5.1.61-4.el6
mysql-
sudo repoquery --requires perl-DBD-MySQL
libc.
libc.
libc.
libc.
libc.
libcrypt.
libcrypto.
libm.
libmysqlcli
libmysqlcli
libnsl.
libssl.
libz.
perl(
perl(Carp)
perl(DBI)
perl(
perl(
perl(strict)
perl(vars)
rtld(GNU_HASH)
So, perl-DBD-MySQL requires libmysqlclient.
Now, mysql-libs is out of picture if Percona is installed since it is obsoleted.
That leaves, Percona-
tags: | added: pkg |
no longer affects: | percona-toolkit/2.1 |
Changed in percona-toolkit: | |
milestone: | 2.1.4 → 2.1.5 |
milestone: | 2.1.5 → 2.1.4 |
Brian Fraser (fraserbn) wrote : | #5 |
After talking to Ignacio, I'm untargetting this for 2.1.4, and retargetting it in 2.1.5 instead.
tags: |
added: repo removed: pkg |
tags: | added: pkg |
Alexey Bychko (abychko) wrote : | #6 |
see http://
When yum is depsolving and it finds that a requirement is provided for by more than one pkg it has to make a choice about which pkg to install. At one point in time it decided by choosing the 'first' one.
Alexey Bychko (abychko) wrote : | #7 |
according to link above, this is not a bug, but just documented yum behavior. thinking on solution
no longer affects: | percona-toolkit/2.1 |
Changed in percona-toolkit: | |
milestone: | 2.2.1 → none |
status: | Confirmed → In Progress |
assignee: | Ignacio Nin (ignacio-nin) → Daniel Nichter (daniel-nichter) |
Changed in percona-toolkit: | |
status: | In Progress → Fix Committed |
Changed in percona-toolkit: | |
status: | Fix Committed → In Progress |
Changed in percona-xtradb-cluster: | |
importance: | Undecided → High |
status: | New → Fix Committed |
assignee: | nobody → Ignacio Nin (ignacio-nin) |
Ignacio Nin (ignacio-nin) wrote : | #8 |
I've submitted a patch (linked branches) to each of the 5.0, 5.1, 5.5 and PXC branches that changes our shared packages to only include versioned libraries, following the model of the CentOS packages. This effectively makes the shared packages not conflict at the file level when installed in different combinations, allowing percona-toolkit to depend on any of them while at the same time permitting an installation of any suite of PS/PXC. Note that in debian we follow this same model. Refer to the commit messages for details.
The packages are currently up in the percona-testing repo. I've tested each suite in rhel6 and rhel5 with percona-toolkit (including PXC) and this bug seems to be fixed.
Changed in percona-server: | |
milestone: | none → 5.5.30-30.2 |
Changed in percona-xtradb-cluster: | |
milestone: | none → 5.5.30-23.7.3 |
Daniel Nichter (daniel-nichter) wrote : | #9 |
As for Percona Toolkit, the fix was done indirectly via the Percona Server packages being fixed. So this was basically fixed in PT 2.2.
Changed in percona-toolkit: | |
status: | In Progress → Fix Released |
Changed in percona-xtradb-cluster: | |
status: | Fix Committed → Fix Released |
Antoni Baranski (sauraus) wrote : | #10 |
Sorry for waking up this old thread but it looks like 5.6 XtraDB Cluster package once again introduced this nasty dependency problem.
Raghavendra D Prabhu (raghavendra-prabhu) wrote : Re: [Bug 1031427] Re: Painful Yum dependencies on CentOS6.3 | #11 |
@Antoni
Can you provide more details on this? Yum logs etc.
On 23 Oct 2014 10:15, "Antoni Baranski" <email address hidden> wrote:
> Sorry for waking up this old thread but it looks like 5.6 XtraDB Cluster
> package once again introduced this nasty dependency problem.
>
> --
> You received this bug notification because you are a member of Percona
> core, which is subscribed to Percona Server.
> Matching subscriptions: percona-server, percona-toolkit, percona-toolkit,
> percona-
> https:/
>
> Title:
> Painful Yum dependencies on CentOS6.3
>
> Status in Percona Server with XtraDB:
> Invalid
> Status in Percona Server 5.1 series:
> Fix Released
> Status in Percona Server 5.5 series:
> Fix Released
> Status in Percona Server 5.6 series:
> Invalid
> Status in Percona Toolkit:
> Fix Released
> Status in Percona XtraDB Cluster - HA scalable solution for MySQL:
> Fix Released
>
> Bug description:
> (Probably a Percona-Server packaging issue, but reporting it here
> because it manifests in a percona-toolkit install)
>
> I have a stock CentOS6.3 install
>
> %> cat /etc/centos-release
> CentOS release 6.3 (Final)
>
> %> uname -r
> 2.6.32-
>
> With the Percona Yum repository package:
>
> %> yum info percona-release
> Loaded plugins: fastestmirror, priorities, security
> Loading mirror speeds from cached hostfile
> * base: mirror.stanford.edu
> * extras: mirrors.kernel.org
> * updates: mirrors.kernel.org
> 68 packages excluded due to repository priority protections
> Installed Packages
> Name : percona-release
> Arch : x86_64
> Version : 0.0
> Release : 1
> Size : 3.6 k
> Repo : installed
> Summary : Percona RPM repository
> URL : http://
> License : GPL version 2
> Description : Percona release file. This package contains yum
> : configuration for the Percona RPM Repository, as well as
> the public
> : GPG keys used to sign them.
>
> I have the following packages installed:
>
> %> rpm -qa |grep -i percona
> Percona-
> percona-
> Percona-
> Percona-
>
> (installed via: `yum install Percona-
> server-55`)
>
> Trying to install percona-toolkit, I get the following:
>
> %> yum install percona-toolkit
> ...
> Transaction Check Error:
> file /usr/lib64/
> Percona-
> file from package Percona-
> file /usr/lib64/
> Percona-
> file from package Percona-
>
> Error Summary
> -------------
>
> If I look at:
>
> %> yum deplist perl-DBD-MySQL
> ...
> dependency: libmysqlclient.
Percona now uses JIRA for bug reports so this bug report is migrated to: https:/
Percona now uses JIRA for bug reports so this bug report is migrated to: https:/
Percona now uses JIRA for bug reports so this bug report is migrated to: https:/
I can confirm this "bug" (annoyance, more than anything) on a fresh install of CentOS 6.3. Trying to install the whole package set (5.5 version) (Percona Server, XtraBackup and percona-toolkit) have undesired lateral effects by default: It tries to delete (ana)cron - because it depends on Postfix, which depends on what 5.1 server provides and also creates a conflict between Percona- Server- shared- 51 and Percona- Server- shared- 55, as this bug reports.
I can also confirm that the workaround solves the dependency problem.