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
.dllfiles.Starting with this release, client authentication plugins do not rely on separate
.dllfiles.
On Windows, the
pvio_npipevirtual 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.dlland 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_TIMEOUTconnection attribute. (ODBC-377)In previous releases, the
SQL_ATTR_LOGIN_TIMEOUTconnection attribute is ignored.Starting with this release, a login timeout can be configured by setting the
SQL_ATTR_LOGIN_TIMEOUTconnection attribute with theSQLSetConnectAttr()function. TheCONN_TIMEOUTconnection parameter has precedence over theSQL_ATTR_LOGIN_TIMEOUTstatement attribute.
When connected to MariaDB Server, query timeouts can be set with the
SQL_ATTR_QUERY_TIMEOUTstatement attribute. (ODBC-377)In previous releases, the
SQL_ATTR_QUERY_TIMEOUTstatement attribute is ignored.Starting with this release, a query timeout can be configured by setting the
SQL_ATTR_LOGIN_TIMEOUTstatement attribute with theSQLSetStmtAttr()function. When theSQL_ATTR_QUERY_TIMEOUTstatement attribute is set, Connector/ODBC sets the with .
Issues Fixed
Connector/ODBC mapped
SQL_FLOATandSQL_C_FLOATto the wrong internal types, which could cause the application to crash in some cases. (ODBC-374)In previous releases,
SQL_FLOATis mapped toSQL_C_FLOAT, andSQL_C_FLOATis mapped toSQLFLOAT. The ODBC specification says thatSQLFLOATshould be mapped to an 8-byte floating point number, butSQL_C_FLOATis 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_FLOATis mapped toSQL_C_DOUBLE, andSQL_C_FLOATis 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)
When is executed, Connector/ODBC does not return a resultset. (ODBC-378, ODBC-386)
In previous releases, subsequent queries could return unknown errors:
[ma-3.1.12][10.3.35-MariaDB]Unknown MySQL errorStarting with this release, Connector/ODBC properly handles the resultset of .
When Connector/ODBC connects with the
CLIENT_MULTI_STATEMENTScapability flag enabled, a memory leak can occur. (ODBC-380)With Connector/ODBC, the
CLIENT_MULTI_STATEMENTScapability flag is enabled when theOPTIONconnection 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_INCREMENTcolumn attribute, so that applications written in Embarcadero RAD Studio do not have to make redundant calls to theSQLPrimaryKeys()function.
