Bug #115472 | Upgrading with DNF/RPM from 8.4.0 fails due to conflict | ||
---|---|---|---|
Submitted: | 1 Jul 5:06 | Modified: | 2 Jul 8:12 |
Reporter: | Daniël van Eeden (OCA) | Email Updates: | |
Status: | Verified | Impact on me: | |
Category: | Connector / C++ | Severity: | S3 (Non-critical) |
Version: | 9.0.0 | OS: | Fedora (Fedora 40) |
Assigned to: | CPU Architecture: | Any | |
Tags: | dnf, packaging, rpm, yum |
[1 Jul 5:06]
Daniël van Eeden
[1 Jul 5:08]
Daniël van Eeden
Workaround: do a `dnf remove` of the 8.4.0 packages and then install 9.0.0.
[2 Jul 8:12]
MySQL Verification Team
Hello Daniël, Thank you for the report and feedback. regards, Umesh
[2 Jul 13:47]
Rafal Somla
Posted by developer: We are investigating the issue. But a quick workaround would be to uninstall current version of 'mysql-connector-c++*' packages (if that is possible) and install the new ones. Note however that in version 9.0.0 we are bumping ABI version of the -jdbc connector library (see release notes). Depending on your situation this might make it impossible to remove version 8.4.0 (if some other RPMs depend on the previous ABI) or it might break existing code that will require re-compile to work with the new ABI. If you are hit by that issue let us know!
[5 Jul 13:04]
Rafal Somla
Posted by developer: It looks that we are hitting bug [1] of RPM package manager. In previous versions of -devel package /usr/include/mysql-cppconn/ was a symbolic link to a version-specific variant of the include folder. In version 9.0.0 we decided to put headers directly in /usr/include/mysql-cppconn/ and resign from version-specific variants. But, apparently, RPM manager can not correctly handle such change from symbolic link to regular directory. A workaround for the issue is proposed in [2] and we will most likely follow that advice. [1] https://bugzilla.redhat.com/show_bug.cgi?id=646523 [2] https://docs.fedoraproject.org/en-US/packaging-guidelines/Directory_Replacement/
[8 Jul 12:13]
Rafal Somla
Posted by developer: Refined Problem Description =========================== In previous versions of -devel package /usr/include/mysql-cppconn/ was a symbolic link to a version-specific variant of the include folder. In version 9.0.0 we decided to put headers directly in /usr/include/mysql-cppconn/ and resigned from version-specific variants. But, apparently, RPM manager can not correctly handle an upgrade from a symbolic link to a regular directory (see bug [1]). Any fix for the issue would require updating our package specifications and this can happen no earlier than in 9.1 release. In the meantime the workaround is to uninstall mysql-connector-c++-devel package before upgrading to 9.0. [1] https://bugzilla.redhat.com/show_bug.cgi?id=646523