Bug #96835 compile mysql-connector-odbc-8.0.17 failed
Submitted: 11 Sep 2019 10:39 Modified: 25 Nov 2019 22:50
Reporter: Filip Janus Email Updates:
Status: Closed Impact on me:
None 
Category:Connector / ODBC Severity:S1 (Critical)
Version:8.0.17 OS:Fedora (f29-f32)
Assigned to: CPU Architecture:Any
Tags: compile fail, connector-odbc-8.0.17

[11 Sep 2019 10:39] Filip Janus
Description:
Compiling mysql-connector-odbc v8.0.17 fail due to many compilation errors.

Build platform : Fedora32(64 bits)
Target: x86_64-redhat-linux
gcc version 8.3.1 20190223 (Red Hat 8.3.1-2)
mysql-connector version: 8.0.17

I wrote patch allowing successful build. Available on 
https://fjanus.fedorapeople.org/mysql-connector-odbc-8.0.17.patch 

How to repeat:
Errors occur already during compilation. 

Suggested fix:
use provided patch
[11 Sep 2019 10:42] Filip Janus
build log

Attachment: build.log (text/x-log), 34.09 KiB.

[11 Sep 2019 11:05] MySQL Verification Team
Hello Filip Janus,

Thank you for the report and supplying patch along with it.
Please note that in order to sumit contributions you must first sign the Oracle Contribution Agreement (OCA). For additional information please check http://www.oracle.com/technetwork/community/oca-486395.html 
If you have any questions, please contact the MySQL community team (mailto:mysql-community_ww@oracle.com) or by visiting https://dev.mysql.com/community/

Sincerely,
Umesh
[11 Sep 2019 11:33] Filip Janus
Hello Umesh Shastry,

I provide this patch under BSD license. Is required OCA in this case too?

Sincerely,
Filip Janus
[11 Sep 2019 12:36] MySQL Verification Team
Hello Filip Janus,

Thank you for getting back on this. I could be wrong but in our system one has to sign individual OCA or part of company-wide OCA in order to submit contributions. I'm checking internally on this with the concern people and get back to you shortly. Also, need to check with community manager on whether you need individual OCA or you can be added to the company-wide OCA(RedHat) if exists. Thank you once again!

regards,
Umesh
[19 Nov 2019 13:54] Rafal Somla
Posted by developer:
 
This issue happens only when linking dynamically to the MySQL client library (MYSQLCLIENT_STATIC_LINKING=1). The root reason was a mismatch between internal copy of internal library headers, which were updated, and the copy of the code implementing library internals, which was not updated to match the headers.
[19 Nov 2019 13:55] Rafal Somla
Posted by developer:
 
Sorry, above comment should say: MYSQLCLIENT_STATIC_LINKING=0 (i.e., use dynamic linking)
[22 Nov 2019 17:31] Rafal Somla
Posted by developer:
 
Fixed by updating the internal copy of mysys and strings library.
[25 Nov 2019 22:50] Philip Olson
Posted by developer:
 
Fixed as of the upcoming MySQL Connector/ODBC 8.0.19 release, and here's the proposed changelog entry by the documentation team:

Connector/ODBC failed to compile when dynamically linking to the MySQL
client library (MYSQLCLIENT_STATIC_LINKING=0); due to a mismatch between
an internal copy of the library headers and the version of code
implementing the library internals. 

Thank you for the bug report.