Download | Release Notes | Changelog |
Release date: 27 Mar 2025
MariaDB Connector/J 3.4.2 is a Stable (GA) release.
: Fixed issue with incorrect statements.isClosed value after closing connection
: Prevented NPE (Null Pointer Exception) after reconnection failure in high availability configurations
: Disabled BULK operations when no parameters are present
For a complete list of changes made in MariaDB Connector/J 3.4.2, with links to detailed information on each push, see the .
Release Notes for MariaDB Connector/J 3.4 series
Download | Release Notes | Changelog |
Release date: 17 Jul 2024
MariaDB Connector/J 3.4.1 is a Stable (GA) release.
For
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
For /
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:
Example:
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:
For
Option useCatalogTerm has an alias databaseTerm for MySQL connector compatibility.
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.
DatabaseMetaData.getImportedKeys returns a different PK_NAME value than DatabaseMetaData.getExportedKeys when using a NON UNIQUE constraint.
Slow performance of function DatabaseMeta.getExportedKeys()
Android app incompatibility, regex CANON_EQ flag is not supported on Android OS
For a complete list of changes made in MariaDB Connector/J 3.4.1, with links to detailed information on each push, see the .
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
XA resource 'xaDataSource': resume for XID 'XID: <some id>' raised -5: invalid arguments were given for the XA operationaddress=(host=<host>|localSocket=<socket>|pipe=<namedpipe>)[(port=<portnumber>)][(type=(master|slave))][(sslMode=disable|trust|verify-ca|verify-full)]jdbc:mariadb:sequential://address=(localSocket=/socket),address=(host=10.0.0.1)(port=3306)(sslMode=verify-full)/DBjdbc:mariadb:sequential://address=(localSocket=/socket)(sslMode=disable),10.0.0.1:3306/DB?sslMode=verify-fullDownload | Release Notes | Changelog |
Release date: 17 May 2024
MariaDB Connector/J 3.4.0 is a Stable (GA) release, and replaces 3.3 as the maintenance releases.
Using SSL (a more correct term would be TLS, but in reality SSL is more commonly used) has been simplified with . Before version 11.4, proper SSL configuration required multiple manual steps for the server and all the clients connecting to it.
For MariaDB Connector/J before 3.4 to establish an SSL encrypted connection, or a MariaDB Server release series previous to 11.4, three options can be used:
Have server certificates generated with trusted Certificate Authorities (CA), using a configuration like: sslMode=verify-full
Configure the connector using a server certificate, like: sslMode=verify-full&serverSslCert=file:///server-cert.pem
Disable the verification of the SSL certificate, which is insecure and not recommended, using a configuration like: sslMode=trust
For MariaDB Connector/J 3.4 to establish an SSL encrypted connection to MariaDB Server 11.4, enabling SSL does not require any special configuration apart from using sslMode=verify-full. The connector doesn't need to know the server certificate anymore, as long as the password is not empty.
The MariaDB Connector/J versions before 3.4 provide a single "timezone" option for working with different time zones for clients and servers. While this functionality remains compatible, it's now separated into two distinct settings:
connectionTimeZone
forceConnectionTimeZoneToSession
There are now 3 options that control timestamps behavior in the java connector:
connectionTimeZone: (LOCAL | SERVER | ) This option defines the connection's time zone. LOCAL retrieves the JVM's default time zone, SERVER fetches the server's global time zone upon connection creation, and allows specifying a server time zone without requesting it during connection establishment.
forceConnectionTimeZoneToSession: (true | false) This setting dictates whether the connector enforces the connection time zone for the session.
preserveInstants: (true | false) This option controls whether the connector converts Timestamp values to the connection's time zone.
While remaining compatible with previous versions, this permits more flexibility when handling timezone difference scenarios. See for detailed information.
Since , the server has a new system variable redirect_url to provide a connection string using the forma mariadb/mysql://[<user>[:<password>]@]<host>[:<port>]/[<db>[?<opt1>=<value1>[&<opt2>=<value2>]]].
When set, all existing connections will be redirected to the designated URL values when appropriate. A connection will only be redirected when no transaction is active.
Example for enabling the redirection:set @@global.redirect_url="mariadb://somehost:3306/"
The redirection feature is enabled by default. It can be disabled by setting the new option permitRedirect to FALSE, which will result in ignoring the redirection URL.
When session tracking is supported by the MariaDB Server release series, Connection.getTransactionIsolation() won’t query the server as the current state is already known from the session tracking information. Connection.setTransactionIsolation will skip the query to set the transaction isolation level if the server is already using the requested transaction isolation level.
Connector/J Version 3 Does Not Respect "nullCatalogMeansCurrent" Property
Database connection failing on android
MariaDB Connector 3 no longer supports query timeout with MySQL
Inconsistency in Handling PreparedStatement.executeQuery() between MariaDB and MySQL Connectors
For a complete list of changes made in MariaDB Connector/J 3.4.0, with links to detailed information on each push, see the .
CONJ-1156 getTables should be ordered as expected
CONJ-1163 jdbcCompliantTruncation Does Not Appear To Be Working
CONJ-1164 Variable initialization ahead of LOAD DATA INFILE not possible by validateLocalFileName pattern
CONJ-1168 useBulkStmts compatibility value with pre 3.2 version
CONJ-1169 improve Client prepared statement setMaxRows implementation
CONJ-1170 OFFSET missing from getSQLKeywords
CONJ-1158 DatabaseMetaData#getFunctions's result not property ordered
CONJ-1159 DatabaseMetaData#getClientInfoProperties not ordered correctly
CONJ-1166 Implement connection properties fallbackToSystemKeyStore and fallbackToSystemTrustStore
CONJ-1173 Bulk implementation returning individual results
CONJ-1174 ConnectorJ gives precision of 20 for signed bigint
CONJ-1100 Be able to filter system tables and views
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.
This page is: Copyright © 2025 MariaDB. All rights reserved.