Skip to content

Releases: mariadb-corporation/mariadb-connector-j

MariaDB java connector 2.5.4

27 Jan 11:17
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Full Changelog

  • CONJ-756 - Logging correction when using enablePacketDebug option
  • CONJ-755 - permits to avoid setting session_track_schema with new option trackSchema

MariaDB java connector 2.5.3

07 Jan 20:06
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Full Changelog

  • CONJ-752 - Manifest file wrong entry - thanks to Christoph Läubrich
  • CONJ-750 - protocol error when not setting database with maxscale
  • CONJ-747 - JDBC Conversion Function fast-path skipped, always using longer implementation

MariaDB java connector 2.5.2

22 Nov 15:19
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

  • CONJ-745 - use pool reset only for corrected COM_RESET_CONNECTION
  • CONJ-743 - byte signed value wrong serialization for text protocol
  • CONJ-742 ensure plugin using Driver classloader

MariaDB java connector 2.5.1

15 Oct 20:00
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

  • CONJ-736 - OSGI compliance
  • CONJ-737 - Error packet caching_sha2_password not handled when not having a password
  • CONJ-738 - PAM authentication multiple exchanges permitting multiple step in connection string
  • CONJ-735 - Multi insert regression correction returning multi generated keys

MariaDB java connector 2.5.0

03 Oct 15:02
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

  • [CONJ-663] Client authentication plugins are now defined as services. The driver has 2 new plugins caching_sha2_password and sha256_password plugin for MySQL compatibility
  • [CONJ-733] Credential service: AWS IAM authentication
  • [CONJ-727] Support configuration of custom SSLSocketFactory
  • [CONJ-561] JDBC 4.3 partial implementation java.sql.Statement methods isSimpleIdentifier, enquoteIdentifier, enquoteLiteral and enquoteNCharLiteral
  • [CONJ-692] ConnectionPoolDataSource interface addition to MariaDbPoolDataSource
  • [CONJ-563] closing possible option batch thread on driver deregistration.
  • [CONJ-732] Driver getPropertyInfo returns no options information when url is empty
  • [CONJ-734] DatabaseMetaData.getSchemaTerm now return "schema", not empty string

MariaDB java connector 2.4.4

13 Sep 14:59
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

  • [CONJ-724] Do not ignore the Calendar parameter in ResultSet#getTime(int, Calendar)
  • [CONJ-725] Connection Failure when using PAM authenticated user on 10.4 MariaDB server
  • [CONJ-729] master-slave regression: commit on read-only server Executed only when there is an active transaction on master connection
  • [CONJ-726] removing possible NPE after failover on aurora cluster

MariaDB java connector 2.4.3

02 Aug 16:48
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

New option blankTableNameMeta permit to have Resultset metadata getTableName methods always return blank in place of returning real table name as JDBC indicate. This is for ease migration from Oracle since Oracle driver always returns an empty string.

  • [CONJ-717] conversion function support for other data type than default MariaDB conversion type
  • [CONJ-722] Permit suppression of result-set metadata getTableName for oracle compatibility
  • [CONJ-719] Saving values using Java 8 LocalTime does not store fractional parts of seconds
  • [CONJ-716] Correcting possible NPE on non thread safe NumberFormat (logging)

MariaDB connector/j 2.4.2

17 Jun 12:37
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

Evolution

New option defaultFetchSize to set default fetch size. When set, all statement will be initialized with indicate fetch size.

Option Description
defaultFetchSize when set, the driver will call setFetchSize(n) with this value on all newly-created Statements

Bugs

  • [CONJ-703] ClassNotFoundException when trying to connect using two-authentication in an OSGI environment.
  • [CONJ-711] Xid format id is unsigned integer, currently sending as signed value.
  • [CONJ-700] autoReconnect=true on Basic Failover doesn't reconnect
  • [CONJ-707] failover might throw an unexpected exception with using "failover"/"sequential" configuration on socket error
  • [CONJ-709] includeThreadDumpInDeadlockExceptions is thrown only if option includeInnodbStatusInDeadlockExceptions is set
  • [CONJ-710] Throw complete stackTrace when having an exception on XA Commands
  • [CONJ-714] Error on connection on galera server when in detached mode.
  • [CONJ-701] typo in error message in SelectResultSet.java
  • [CONJ-679] parse Query when receiving LOAD LOCAL INFILE

MariaDB connector/j 1.8.0

07 Feb 22:00
Compare
Choose a tag to compare

This version is a general availability (GA) release for java 7+

Changelog

Evolutions

  • [CONJ-675] permit multiple alternative authentication methods for the same user (future MariaDB 10.4 feature)
  • {CONJ-678] permit indication of truststore/keystore type (JKS/PKCS12), then not relying on java default type
  • [CONJ-378] GSSAPI: client can provide SPN
  • [CONJ-667] Support MYSQL_TYPE_JSON datatype
  • [CONJ-652] faster results buffering socket available
  • [CONJ-659] improve text performance reading date/time/timestamp resultset
  • [CONJ-670] ability to Refresh SSL certificate

New options:

Option Description
useReadAheadInput use a buffered inputSteam that read socket available data.
Default: true
keyStoreType indicate key store type (JKS/PKCS12). default is null, then using java default type.
trustStoreType indicate trust store type (JKS/PKCS12). default is null, then using java default type
servicePrincipalName when using GSSAPI authentication, SPN (Service Principal Name) use the server SPN information. When set, connector will use this value, ignoring server information
includeInnodbStatusInDeadlockExceptions add "SHOW ENGINE INNODB STATUS" result to exception trace when having a deadlock exception.
Default: false
includeThreadDumpInDeadlockExceptions add thread dump to exception trace when having a deadlock exception.
Default: false

CONJ-642 disable the option "useBulkStmts" by default

Using useBulkStmts permit faster batch, but cause one major issue: Batch return -1 = SUCCESS_NO_INFO

Different option uses this information for optimistic update, and cannot confirm if update succeeds or not.
This option still makes sense, since for big batch is way faster, but will not be activated by default.

Minor changes

  • [CONJ-628] optimization to read metadata faster
  • [CONJ-637] java.sql.Driver class implement DriverPropertyInfo[] getPropertyInfo, permitting listing options on querying tools
  • [CONJ-641] update maven test dependencies for java 10 compatibility
  • [CONJ-643] PreparedStatement::getParameterMetaData always returns VARSTRING as type resulting in downstream libraries interpreting values wrongly
  • [CONJ-623] Increase connection logging when Primary node connection fails
  • [CONJ-384] Add option permit having "affected" or "found" rows

Bugfixes

  • [CONJ-646] possible NullPointerException when connection lost to database using aurora configuration with one node
  • [CONJ-672] batch using multi-send can hang when using query timeout
  • [CONJ-544] disable SSL session resumption when using SSL
  • [CONJ-589] correcting Clob.length() for utf8mb4
  • [CONJ-649] datasource connectTimeout URL parameter is not honoured
  • [CONJ-650] Correction on resultset.getObject(columnName, byte[].class) when value is NULL
  • [CONJ-665] old MySQL (<5.5.3) doesn't support utf8mb4, using utf8 on 3 bytes as connection charset by default
  • [CONJ-671] MariaDb bulk threads occupy full cpu(99%) while db connections broken
  • [CONJ-673] abording a connection while fetching a query still does read whole resultset
  • [CONJ-669] SQLSyntaxErrorException when querying on empty column name
  • [CONJ-674] make dumpQueriesOnException = false by default as per documentation
  • [CONJ-616] correction on possible NPE on getConnection when using failover configuration and master is down, not throwing a proper exception
  • [CONJ-636] Error in batch might throw a NPE and not the proper Exception
  • [CONJ-624] MariaDbPoolDataSource possible NPE on configuration getter
  • [CONJ-622] The option "connectTimeout" must take in account DriverManager.getLoginTimeout() when set
  • [CONJ-621] wrong escaping when having curly bracket in table/field name
  • [CONJ-618] Client preparestatement parsing error on escaped ' / " in query
    minor:
  • [CONJ-644] small optimization when validating galera connection
  • [CONJ-625] add coverage test
  • [CONJ-654] DatabaseMetaData.getDriverName() returns connector/J with a lowercase c

MariaDB connector/j 2.4.0

29 Jan 08:00
Compare
Choose a tag to compare

This version is a general availability (GA) release.

Changelog

Evolutions

  • [CONJ-675] permit multiple alternative authentication methods for the same user (future MariaDB 10.4 feature)
  • {CONJ-678] permit indication of truststore/keystore type (JKS/PKCS12), then not relying on java default type
  • [CONJ-378] GSSAPI: client can provide SPN
  • [CONJ-667] Support MYSQL_TYPE_JSON datatype
  • [CONJ-652] faster results buffering socket available
  • [CONJ-659] improve text performance reading date/time/timestamp resultset
  • [CONJ-670] ability to Refresh SSL certificate

New options:

Option Description
useReadAheadInput use a buffered inputSteam that read socket available data.
Default: true
keyStoreType indicate key store type (JKS/PKCS12). default is null, then using java default type.
trustStoreType indicate trust store type (JKS/PKCS12). default is null, then using java default type
servicePrincipalName when using GSSAPI authentication, SPN (Service Principal Name) use the server SPN information. When set, connector will use this value, ignoring server information

Bugs

  • [CONJ-646] possible NullPointerException when connection lost to database using aurora configuration with one node
  • [CONJ-672] batch using multi-send can hang when using query timeout
  • [CONJ-544] disable SSL session resumption when using SSL
  • [CONJ-589] correcting Clob.length() for utf8mb4
  • [CONJ-649] datasource connectTimeout URL parameter is not honoured
  • [CONJ-650] Correction on resultset.getObject(columnName, byte[].class) when value is NULL
  • [CONJ-665] old MySQL (<5.5.3) doesn't support utf8mb4, using utf8 on 3 bytes as connection charset by default
  • [CONJ-671] MariaDb bulk threads occupy full cpu(99%) while db connections broken
  • [CONJ-673] abording a connection while fetching a query still does read whole resultset
  • [CONJ-669] SQLSyntaxErrorException when querying on empty column name
  • [CONJ-674] make dumpQueriesOnException = false by default as per documentation

minor:

  • [CONJ-644] small optimization when validating galera connection
  • [CONJ-625] add coverage test
  • [CONJ-654] DatabaseMetaData.getDriverName() returns connector/J with a lowercase c