MySQL Connector/ODBC Release Notes
This is an alpha release for the Connector/ODBC 5.3.x series. The available downloads include both a Unicode driver and an ANSI driver within the same package (the two drivers are no longer shipped separately). 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 first MySQL ODBC driver series conforming to the ODBC 3.8 specification. It contains the minimally required implementation of the standard with key 3.8 features, which includes driver self-identification and the streaming of output parameters (supported for binary types only) in this alpha release.
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.
The release is built against the MySQL server 5.6.14 client library.
Keep in mind that this is an alpha release and, as with any other pre-production releases, cautions should be taken when installing on production level systems or systems with critical data. Not all of the features planned for the final Connector/ODBC 5.3 release are implemented.
Added a lock in the ENV
structure against
simultaneous accesses to an environment handle's connection
list, in order to avoid memory access issues that might occur
when multiple threads share the same environment handle.
(Bug #17240611, Bug #69864)
Support for File Data Source Names. (Bug #11746219, Bug #24581)
Support of ODBC 3.8 standard: driver self-identification and input/output stream parameters
Added GUI DSN setup dialog for some Unix-based systems by implementing a GTK+-based setup library.
Added a new test module for crash bugs
(my_crash.c
).
Added new variable in CMake configuration files
ODBCCP32_LIB
for
odbccpp32.lib
path, and added
MYSQLCLIENT_LIB_NAME
for linking MySQL client
library statically or dynamically by specifying the MySQL client
library (libmysql.*
,
mysqlclient.*
,
libmysqlclient_r.*
,
libmysqlclient.*
) to be used. Linkage to
MySQL 5.6.4 and later is now by C++, because
libmysqlclient_r
has become a C++ library
since.
Bookmark support added in Connector/ODBC.
A memory leak occurred in
fetch_varlength_columns()
while calling
SQLExecDirect()
, because freeing
result_bind
buffers requires
field_count
, which was set to
“0” when
mysql_stmt_free_result()
was called. This fix
frees result_bind
buffers before calling
mysql_stmt_free_result()
.
(Bug #17441296)
A program using parameter markers might crash with a
segmentation fault. To avoid the problem, this fix changes the
argument length
in the function
convert_c_type2str()
to be a pointer to a
long integer.
(Bug #17421620, Bug #69733)
Memory leaks occurred in SQLPrepare()
and
SQLExecDirect()
when
SQLBindParamater
was used on the SQL
statements. This fix frees previous results of
mysql_stmt_result_metadata()
in order to
prevent the memory leaks.
(Bug #17400483, Bug #70113)
The exit condition for a for
loop in
stringutil.c
is changed to avoid a possible
out-of-bounds error and the associated reports by Valgrind.
(Bug #17397596, Bug #64105)
Microsoft Visual Studio 2010 crashed when reading rows from any table in Server Explorer with connections to DSNs made by Connector/ODBC. (Bug #17304031, Bug #69950)
When SQL TIME
data was converted to the C
data type of TIMESTAMP
, if the value of the
hour
field is greater than 24, the date
fields did not get set to the current date and the
fraction
field for seconds did not get set to
zero as required by the ODBC specifications.
(Bug #17016839, Bug #69545)
When trying to create a linked server in Micrsoft SQL Server 2008 to a MySQL server set up with Connector/ODBC as a DSN, the Microsoft SQL Server (if it is a 64-bit version) crashed or the linked server suffered a catastrophic failure (if a 32-bit version of the Microsoft SQL Server is used). (Bug #16604346, Bug #63386)
When reading TIME
column data using the
SQLGetData
method into the
SQL_C_TYPE_TIME
datatype, errors occurred
when the time string contained more than 6-digits (e.g.,
120:53:44).
(Bug #16176981, Bug #67793)
When called after SQLPrepare
, the funciton
SQLMoreResults
returned
SQL_ERROR
, instead of
SQL_NO_DATA
as required by the ODBC
specification.
(Bug #16101282, Bug #67920)
Connector/ODBC used the “;” character instead of a null byte (“\0”) to terminate keyword-value pairs in attribute strings. (Bug #15940689, Bug #66548)
When using the Unicode-enabled version of the Connector/ODBC driver to connect to any MySQL server of version 5.5.2 or older, all statements failed with the error message “Server does not support 4-byte encoded UTF8 characters.” (Bug #14838690, Bug #67428)
The configured values of a DSN's parameters overrode the values provided through the connection string, instead of the other way round. (Bug #11760574, Bug #52996)