Release Notes for MariaDB Connector/ODBC 3.1.18
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB Connector/ODBC 3.1
Topics on this page:
Overview
MariaDB Connector/ODBC is a standard ODBC driver for building cross-platform applications on top of MariaDB database products. It is compliant with ODBC 3.5. It is written in C and uses MariaDB Connector/C.
MariaDB Connector/ODBC 3.1.18 was released on 2023-04-13. This release is of General Availability (GA) maturity.
Notable Changes
MariaDB Connector/ODBC 3.1.18 uses MariaDB Connector/C 3.3.2.
On Windows, client authentication plugins are now statically compiled into MariaDB Connector/ODBC builds.
In previous releases, client authentication plugins are installed as separate
.dll
files.Starting with this release, client authentication plugins do not rely on separate
.dll
files.
On Windows, the
pvio_npipe
virtual I/O plugin is now statically compiled into MariaDB Connector/ODBC builds. (ODBC-384, ODBC-387)In previous releases, when Connector/ODBC tries to connect via a named pipe, it has an external dependency on
pvio_npipe.dll
and raises the following error when the library is not found:[ma-3.1.17]Plugin pvio_npipe could not be loaded: The specified module was not found. Library path is 'C:\Program Files\MariaDB\MariaDB ODBC Driver 64-bit\plugin\pvio_npipe.dll'
Starting with this release, no external dependency is required to connect to a named pipe on Windows.
Login timeouts can be set with the
SQL_ATTR_LOGIN_TIMEOUT
connection attribute. (ODBC-377)In previous releases, the
SQL_ATTR_LOGIN_TIMEOUT
connection attribute is ignored.Starting with this release, a login timeout can be configured by setting the
SQL_ATTR_LOGIN_TIMEOUT
connection attribute with theSQLSetConnectAttr()
function. TheCONN_TIMEOUT
connection parameter has precedence over theSQL_ATTR_LOGIN_TIMEOUT
statement attribute.
When connected to MariaDB Server, query timeouts can be set with the
SQL_ATTR_QUERY_TIMEOUT
statement attribute. (ODBC-377)In previous releases, the
SQL_ATTR_QUERY_TIMEOUT
statement attribute is ignored.Starting with this release, a query timeout can be configured by setting the
SQL_ATTR_LOGIN_TIMEOUT
statement attribute with theSQLSetStmtAttr()
function. When theSQL_ATTR_QUERY_TIMEOUT
statement attribute is set, Connector/ODBC sets the with .
Issues Fixed
Connector/ODBC mapped
SQL_FLOAT
andSQL_C_FLOAT
to the wrong internal types, which could cause the application to crash in some cases. (ODBC-374)In previous releases,
SQL_FLOAT
is mapped toSQL_C_FLOAT
, andSQL_C_FLOAT
is mapped toSQLFLOAT
. The ODBC specification says thatSQLFLOAT
should be mapped to an 8-byte floating point number, butSQL_C_FLOAT
is only a 4-byte floating point number. Due to this difference, fetching arowset
(array of rows) using column-based binding can cause application crashes when Connector/ODBC calculates incorrect boundaries.Starting with this release,
SQL_FLOAT
is mapped toSQL_C_DOUBLE
, andSQL_C_FLOAT
is mapped toSQLREAL
.
When a batch of queries is executed and one of the queries raises an error while attempting to store the result, the application can crash. (ODBC-375)
-
is executed, Connector/ODBC does not return a resultset.
In previous releases, subsequent queries could return unknown errors:
[ma-3.1.12][10.3.35-MariaDB]Unknown MySQL error
Starting with this release, Connector/ODBC properly handles the resultset of
.
When Connector/ODBC connects with the
CLIENT_MULTI_STATEMENTS
capability flag enabled, a memory leak can occur. (ODBC-380)With Connector/ODBC, the
CLIENT_MULTI_STATEMENTS
capability flag is enabled when theOPTION
connection parameter bitmask has bit 26 (equivalent to 226 or 67108864) enabled.
Connector/ODBC encounters issues with applications that check whether columns have the non-standard auto increment column attribute, such as Microsoft Access and some applications written in Embarcadero RAD Studio. (ODBC-313)
In previous releases, applications written in Embarcadero RAD Studio could work around this limitation by making redundant calls to the
SQLPrimaryKeys()
function, which would cause the to be queried excessively.Starting with this release, Connector/ODBC provides details about the non-standard
AUTO_INCREMENT
column attribute, so that applications written in Embarcadero RAD Studio do not have to make redundant calls to theSQLPrimaryKeys()
function.