Bug #46057 RPM packages do not identify the version levels of each component.
Submitted: 8 Jul 2009 20:40 Modified: 1 Dec 2016 13:34
Reporter: Shawn Green Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Packaging Severity:S3 (Non-critical)
Version:5.1 OS:Any
Assigned to: CPU Architecture:Any

[8 Jul 2009 20:40] Shawn Green
Description:
Some external RPM packages may contain a Requires: constraint for various MySQL components. Unfortunately those restrictions cannot be resolved as we do not include version information about our packaged components, only the packages themselves. 

How to repeat:
Look at the embedded metadata within a MySQL RPM package. 

Suggested fix:
Add the version information to the Provides: tag at the component level so that a Requires: restriction can properly resolve the dependency.
[9 Jul 2009 6:27] Sveta Smirnova
Thank you for the report.

Actually it partially provides versions for some of components:

$for i in `ls .`; do echo $i; rpm -qp --provides $i; echo "================================"; done
MySQL-client-enterprise-5.0.83-0.rhel4.i386.rpm
MySQL-client  
mysql-client  
MySQL-client-enterprise = 5.0.83-0.rhel4
================================
MySQL-client-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
MySQL-client  
mysql-client  
MySQL-client-enterprise-gpl = 5.0.83-0.rhel4
================================
MySQL-devel-enterprise-5.0.83-0.rhel4.i386.rpm
MySQL-devel  
mysql-devel  
MySQL-devel-enterprise = 5.0.83-0.rhel4
================================
MySQL-devel-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
MySQL-devel  
mysql-devel  
MySQL-devel-enterprise-gpl = 5.0.83-0.rhel4
================================
MySQL-enterprise-debuginfo-5.0.83-0.rhel4.i386.rpm
libmysqlclient.so.15.0.0.debug  
libmysqlclient_r.so.15.0.0.debug  
MySQL-enterprise-debuginfo = 5.0.83-0.rhel4
================================
MySQL-enterprise-gpl-debuginfo-5.0.83-0.rhel4.i386.rpm
libmysqlclient.so.15.0.0.debug  
libmysqlclient_r.so.15.0.0.debug  
MySQL-enterprise-gpl-debuginfo = 5.0.83-0.rhel4
================================
MySQL-server-enterprise-5.0.83-0.rhel4.i386.rpm
MySQL  
MySQL-server  
config(MySQL-server-enterprise) = 5.0.83-0.rhel4
msqlormysql  
mysql  
mysql-server  
MySQL-server-enterprise = 5.0.83-0.rhel4
================================
MySQL-server-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
MySQL  
MySQL-server  
config(MySQL-server-enterprise-gpl) = 5.0.83-0.rhel4
msqlormysql  
mysql  
mysql-server  
MySQL-server-enterprise-gpl = 5.0.83-0.rhel4
================================
MySQL-shared-compat-enterprise-5.0.83-0.rhel4.i386.rpm
MySQL-shared  
libmysqlclient.so.12  
libmysqlclient.so.14  
libmysqlclient.so.14(libmysqlclient_14)  
libmysqlclient.so.15  
libmysqlclient.so.15(libmysqlclient_15)  
libmysqlclient_r.so.12  
libmysqlclient_r.so.14  
libmysqlclient_r.so.14(libmysqlclient_14)  
libmysqlclient_r.so.15  
libmysqlclient_r.so.15(libmysqlclient_15)  
MySQL-shared-compat-enterprise = 5.0.83-0.rhel4
================================
MySQL-shared-compat-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
MySQL-shared  
libmysqlclient.so.10  
libmysqlclient.so.12  
libmysqlclient.so.14  
libmysqlclient.so.14(libmysqlclient_14)  
libmysqlclient.so.15  
libmysqlclient.so.15(libmysqlclient_15)  
libmysqlclient_r.so.10  
libmysqlclient_r.so.12  
libmysqlclient_r.so.14  
libmysqlclient_r.so.14(libmysqlclient_14)  
libmysqlclient_r.so.15  
libmysqlclient_r.so.15(libmysqlclient_15)  
MySQL-shared-compat-enterprise-gpl = 5.0.83-0.rhel4
================================
MySQL-shared-enterprise-5.0.83-0.rhel4.i386.rpm
MySQL-shared  
libmysqlclient.so.15  
libmysqlclient.so.15(libmysqlclient_15)  
libmysqlclient_r.so.15  
libmysqlclient_r.so.15(libmysqlclient_15)  
mysql-shared  
MySQL-shared-enterprise = 5.0.83-0.rhel4
================================
MySQL-shared-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
MySQL-shared  
libmysqlclient.so.15  
libmysqlclient.so.15(libmysqlclient_15)  
libmysqlclient_r.so.15  
libmysqlclient_r.so.15(libmysqlclient_15)  
mysql-shared  
MySQL-shared-enterprise-gpl = 5.0.83-0.rhel4
================================
MySQL-test-enterprise-5.0.83-0.rhel4.i386.rpm
mysql-test  
MySQL-test  
MySQL-test-enterprise = 5.0.83-0.rhel4
================================
MySQL-test-enterprise-gpl-5.0.83-0.rhel4.i386.rpm
mysql-test  
MySQL-test  
MySQL-test-enterprise-gpl = 5.0.83-0.rhel4
================================

Please confirm if I understood correctly you need version info for libmysqlclient*
[9 Jul 2009 13:05] MySQL Verification Team
Yes, please. 

The request is to have all components in any RPM (such as libmysqlclient, Connector/*, ...) properly tagged with version information but starting with libmysqlclient is a good first step. Thank you.
[9 Jul 2009 19:35] Sveta Smirnova
Thank you for the feedback.

Verified as described.
[10 Jul 2009 16:18] mark thomas
Hello, I filed the initial request through the OEM channel because our product ships bound to a specific version of the mysql RPMs which are retrieved along with our software RPMs via a package management tool (i.e. smart, zypper) and in attempting to begin using the commercial version I discovered that the commercial RPMs do not specify what version of the different pieces of mysql they provide thus causing our application to fail to install since we add a 'Requires:' tag in our RPMs for version XXX (Note: we use the SLES RPMs).

Additionally, we cannot really relax the 'Requires:' tag to 'mysql >= 5' as other packages do because there are other mysql packages in various repositories that provide newer revision numbers for the same provided binaries (e.g. stable community version is 5.1.35).  In addition, some of the package management tools (namely smart) aren't always completely accurate.  we've even seen smart install 32-bit mysql RPMs on 64-bit servers when both arch RPMs were available!  This is also why my patch to the OEM ticket included the 'type' of package (e.g. MySQL-server-enterprise) so we can easily distinguish the commercial version we pay for using the 'Requires:' tag versus the community editions in other repositories.
[1 Dec 2016 13:34] Terje Røsten
Posted by developer:
 
This issue has been resolved by RPMS packages in MySQL Repos.