Related Documentation Download these Release Notes
PDF (US Ltr) - 402.2Kb
PDF (A4) - 401.4Kb

MySQL Connector/ODBC Release Notes  /  Changes in MySQL Connector/ODBC Version 5.3  /  Changes in MySQL Connector/ODBC 5.3.2 (2014-04-08, General Availability)

Changes in MySQL Connector/ODBC 5.3.2 (2014-04-08, General Availability)

This is the first GA release for the Connector/ODBC 5.3.x series. The available downloads include both a Unicode driver and an ANSI driver based on the same modern codebase. Please select the driver type you need—Unicode or ANSI—based on the type of your application. Server-side prepared statements are enabled by default. It is suitable for use with any MySQL version since 4.1 (it will not work with 4.0 or earlier releases.)

This is the third release of the MySQL ODBC driver conforming to the ODBC 3.8 specification. It contains the minimally required implementation of the standard with key ODBC 3.8 features, which include self-identification as a ODBC 3.8 driver, streaming of output parameters (supported for binary types only), and support of the SQL_ATTR_RESET_CONNECTION connection attribute (for the Unicode driver only).

Connector/ODBC 5.3 also introduces a GTK+-based setup library, providing GUI DSN setup dialog on some Unix-based systems. The library is currently included in the Oracle Linux 6 and Debian 6 binary packages. Other new features in the 5.3 series include file DSN and bookmark support.

Functionality Added or Changed

  • Implemented support for the ODBCINSTGetProperties interface for use by unixODBC GUI dialogs. This allows users to configure a file DSN through a graphical user interface on Unix-like platforms. (Bug #17513175, WL #7577)

  • Added support for the connection flag DFLT_BIGINT_BIND_STR. (WL #7579)

  • Made the Connector/ODBC GUI on Linux comply with the GNOME Coding Guidelines for Supporting Accessibility. (WL #7635)

Bugs Fixed

  • The functions SQLSetDescField(), SQLGetDiagField(), and SQLGetDiagRec() crashed when a null pointer was passed as a handle for those functions. This fix makes the functions check if the passed pointer is null before using it. (Bug #18431088)

  • SQLBulkOperations(SQL_FETCH_BOOKMARK) returned an SQL_NO_DATA error when called after SQLBulkOperations(SQL_UPDATE_BY_BOOKMARK) or SQLBulkOperations(SQL_DELETE_BY_BOOKMARK). (Bug #18287216)

  • The order of the control elements was wrong during control selection in Connector/ODBC's Windows GUI. (Bug #18240696)

  • Concurrent execution of SQLEndTran() and SQL_HANDLE_ENV resulted in a segmentation fault. (Bug #18166331)

  • Calling SQLNumResultCols() with a NULL parameter resulted in a segmentation fault. (Bug #18165197)

  • Connector/ODBC's GUI dialog could not be opened from within ODBCManageDataSourcesQ4 for editing an existing DSN. (Bug #18046123)

  • myodbc-installer did not initialize the allocated memory. This fix flushes the buffer with \0 for initialization. (Bug #18046120)

  • Connector/ODBC crashed when trying to prepare a query after connecting to the server with an invalid value for CHARSET. This fix checks the CHARSET value and throws an error if it is invalid. (Bug #17999659)

  • At a malloc() failure, Connector/ODBC crashed because in the driver_new() function, driver is being freed before driver->name and driver->lib. This fix corrects the order of the free() calls. (Bug #17992912)

  • Driver and installer crashed when the path lengths supplied were longer than 256 characters or when the option strings were longer than 100 characters. This fix makes Connector/ODBC return the proper errors instead. (Bug #17966018)

  • SQLFetch() crashed when executed using unixodbc versions 2.3.0, 2.3.1, or 2.3.2. (Bug #17857204)

  • A segmentation fault occurred in SQLSpecialColumns() if the table name supplied was too long. This fix makes Connector/ODBC throw a proper error for the situation. (Bug #17854697)

  • When called after SQLParamaData, SQLGetData returned an error. (Bug #17842966)

  • SQLGetData did not return correct length of the data when retrieving data from an output parameter stream. (Bug #17814768, Bug #70946)

  • A segmentation fault occurred in SQLBulkOperations for an SQL_UPDATE_BY_BOOKMARK if the prior fetch returned no records. (Bug #17714358)

  • Data corruption occurred in SQLBulkOperations(), because in the batch_insert() function, ptr_offset_adjust sometimes pointed to an invalid memory location. (Bug #17714172)

  • While doing BULK INSERT into a table's time column using Connector/ODBC, a syntax error was thrown if there was an hour value larger than 99. This fix makes sure the proper error is thrown, and when an hour value is larger than 23. (Bug #17613161)

  • SQLDescribeCol() returned a memory allocation failure error when called without a resultset. This fix makes sure the proper error is returned. (Bug #17588101)

  • If the catalog name given to SQLSetConnectAttr() was too long, calling SQLConnect() or SQLDriverConnect() crashed the connection, and calling SQLGetConnectAttr() returned null for the catalog name. (Bug #17587913)

  • A memory leak occurred in SQLExecute() when the connection was killed by another thread. (Bug #17587617)

  • The DMG installer for Connector/ODBC failed on OS X 10.8 and 10.9. This fix corrects the wrong identification for the drive type, which caused the installation problem. (Bug #17512040, Bug #70422)

  • A memory leak occurred in SQLSetStmtAttr(). (Bug #17441507)

  • A segmentation fault occurred when SQLColumns()'s argument for table name was longer than 256 characters or its argument for column name was longer than 129 characters. This fix makes Connector/ODBC throw a proper error for those situations. (Bug #17358838)

  • An assertion failure occurred in SQLDescribeCol() if the column number used is larger than the number of columns in the result set. (Bug #17311065)

  • A memory leak occurred in SQLProcedureColumns() when no function or procedure column satisfying the selection condition existed. (Bug #17298721)

  • A segmentation fault occurred in myodbc_casecmp() when the provided query was empty. (Bug #17085344)

  • When using Connector/ODBC in Microsoft Access, sorting a column in the data view might crash the program. (Bug #17071780, Bug #69550)

  • When the connection option FLAG_NO_INFORMATION_SCHEMA was used, calling the SQLFetch function after the SQLForeignKeys function returned bad results. (Bug #16920750)

  • When building Connector/ODBC on some 64-bit systems other than x86_64 (e.g. ppc64), CMake did not recognize that it was a 64-bit system and incorrectly used lib instead of lib64 as directory name for installing the dynamic library. This fix implements a two-step approach, making CMake check for the system architecture by reading the value of CMAKE_SIZEOF_VOID_P and also by checking the existence of the /usr/lib64 folder. (Bug #16785424)

  • The function SQLForeignKeys() did not work if the connection option NO_I_S was set. (Bug #13712420, Bug #64307)

  • Implemented a workaround for a control issue with GtkComboBox and GtkComboBoxEntry, in which the dialog control intercepted the keyboard signals, so that focus could be set to other controls using the keyboard. (WL #7637)