Release Notes for MariaDB Connector/J 3.0.9
This page is part of MariaDB's Documentation.
The parent of this page is: Release Notes for MariaDB Connector/J 3.0
Topics on this page:
Overview
MariaDB Connector/J is a lightweight JDBC driver (Type 4) for building applications on top of MariaDB database products with Java 8, Java 11, and Java 17.
This release is compatible with JDBC 4.2.
MariaDB Connector/J 3.0.9 was released on 2022-11-08. This release is of General Availability (GA) maturity.
Issues Fixed
When GSSAPI authentication occurs on Windows using WAFFLE, an error is raised. (CONJ-1021)
In previous releases, the following error was raised:
java.sql.SQLNonTransientConnectionException: (conn=CONNECTION_ID) Could not connect to HOST:PORT : Connection reset
Starting with this release, when GSSAPI authentication occurs on Windows using WAFFLE, an error is not raised.
When the
DatabaseMetaData.getImportedKeys()
method is called, the result-set might not have the real key name in thePK_NAME
column. (CONJ-1019)In previous releases, the
PK_NAME
column was alwaysnull
.Starting with this release, the
SHOW CREATE TABLE
statement is used to obtain key names, and thePK_NAME
column is set to the real name of the primary key.
When the
PreparedStatement.setNull()
method is called as part of a batch operation, the operation is split into multiple operations instead of being batched. (CONJ-1016)When a stored procedure is called with an
INOUT
parameter, if the parameter's value is set before registering the parameter as an output parameter using theCallableStatement.registerOutParameter()
method, the parameter is sent to the server asNULL
. (CONJ-1012)For example, in previous releases, the following code would cause parameter
1
to be sent asNULL
to the server:cstmt = connection.prepareCall(sql); cstmt.setLong(1, 42L); cstmt.registerOutParameter(1, Types.NUMERIC); cstmt.executeQuery();
In previous releases, this issue could be avoided by calling the
CallableStatement.registerOutParameter()
method before setting the parameter's value, such as in the following code:cstmt = connection.prepareCall(sql); cstmt.registerOutParameter(1, Types.NUMERIC); cstmt.setLong(1, 42L); cstmt.executeQuery();
Starting with this release, the order of method calls does not matter.
When the
PreparedStatement.setTimestamp()
method is called called by multiple threads in parallel with aCalendar
object provided as the third parameter, a race condition can cause timestamps to be incorrect. (CONJ-1017)Starting with this release, the
Calendar
object is used in asynchronized
block, so the race condition no longer occurs.
Installation
Upgrade
MariaDB Connector/J 3.0 has been superseded by MariaDB Connector/J 3.3, which is fully compatible with MariaDB Connector/J 3.0. For upgrade instructions: