MariaDB Connector/J 3.4.1 Release Notes

You are viewing an old version of this article. View the current version here.

Download Release Notes Changelog Connector/J Overview

Release date: 17 Jul 2024

MariaDB Connector/J 3.4.1 is a Stable (GA) release.

For an overview of MariaDB Connector/J see the About MariaDB Connector/J page

Note: This page describes features in an unreleased version of MariaDB Connector/J.

Unreleased means there are no official packages or binaries available for download which contain the features. The source code is available on GitHub.

Notable Changes

Implementation of pinGlobalTxToPhysicalConnection for XA Connection

For CONJ-1189

The new boolean option pinGlobalTxToPhysicalConnection, when enabled, ensures that an operation for a specific XID is routed to the same connection, to permit supporting XA START <xid> when XA END has been called. This prevent errors like

XA resource 'xaDataSource': resume for XID 'XID: <some id>' raised -5: invalid arguments were given for the XA operation

Enhanced host description

For CONJ-685/CONJ-686

The host description for connecting to the server has been changed from either <host>[:<portnumber>] or address=(host=<host>)[(port=<portnumber>)][(type=(master|slave))] to a more detaild host description, permitting to set localsocket or pipe, and to define a specific ssl mode depending on the host. New format:

address=(host=<host>|localSocket=<socket>|pipe=<namedpipe>)[(port=<portnumber>)][(type=(master|slave))][(sslMode=disable|trust|verify-ca|verify-full)]

Example:

jdbc:mariadb:sequential://address=(localSocket=/socket),address=(host=10.0.0.1)(port=3306)(sslMode=verify-full)/DB

This connection string now permits to use a local unix socket if available, and host 10.0.0.1 with ssl if the unix socket is not available. A detailed host description option supersedes a global option description. The previous example can also be written in the following way, defining different ssl modes for both host options:

jdbc:mariadb:sequential://address=(localSocket=/socket)(sslMode=disable),10.0.0.1:3306/DB?sslMode=verify-full

Adding databaseTerm alias

For CONJ-1190

Option useCatalogTerm has an alias databaseTerm for MySQL connector compatibility.

Bugs Fixed

  • CONJ-1181 The validation of a statement of the cache for prepared statements is not taking the use of different schemas into account, which can result in unexpected behavior when the same statement is executed on different schemas.
  • CONJ-1178 DatabaseMetaData.getImportedKeys returns a different PK_NAME value than DatabaseMetaData.getExportedKeys when using a NON UNIQUE constraint.
  • CONJ-1180 Slow performance of function DatabaseMeta.getExportedKeys()
  • CONJ-1185 Android app incompatibility, regex CANON_EQ flag is not supported on Android OS
  • CONJ-1188 Database meta getSQLKeywords is listing all reserved keywords, not only the restricted keywords
  • CONJ-1191 The Function metadata getImportedKeys is slow when a database has not been set
  • CONJ-1068 The Function ResultSetMetaData.getColumnTypeName() returns type VARCHAR instead of type TINYTEXT for columns of type TINYTEXT
  • CONJ-1182 Missing error mapping for errors XA_RBTIMEOUT, XA_RBTIMEOUT and XA_RBDEADLOCK

Changelog

For a complete list of changes made in MariaDB Connector/J 3.4.1, with links to detailed information on each push, see the changelog.

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.