Download Release Notes Changelog Connector/J Overview

Release date: 31 July 2017

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

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

Notable Changes

This version is a general availability (GA) release. (2.x version need java 8+)

Notable changes and additions

CONJ-422 : verification of SSL Certificate Name Mismatch

When using ssl, driver check hostname against the server's identity as presented in the server's Certificate (checking alternative names or certificate CN) to prevent man-in-the-middle attack. Verification is disabled when the option "trustServerCertificate" is set.

A new option "disableSslHostnameVerification" permit to deactivate this validation.

disableSslHostnameVerificationWhen using ssl, driver check hostname against the server's identity as presented in the server's Certificate (checking alternative names or certificate CN) to prevent man-in-the-middle attack. This option permit to deactivate this validation. Hostname verification is disabled when the option trustServerCertificate is set\Default: false. Since 2.1.0

CONJ-400 - Galera validation

When configuration with multi-master, Connection.isValid() will not only validate connection, but host state (@@wsrep_cluster_status). A connection to a node that is not in primary mode will return false (meaning that in pool, connection will be discarded)

CONJ-322 - ResultSet.update* methods implementation

ResultSet.update* methods aren't implemented statement using ResultSet.CONCUR_UPDATABLE are now able to update record. example:

    Statement stmt = con.createStatement(
                                  ResultSet.TYPE_SCROLL_INSENSITIVE,
                                  ResultSet.CONCUR_UPDATABLE);
    ResultSet rs = stmt.executeQuery("SELECT age FROM TABLE2");
    // rs will be scrollable, will not show changes made by others,
    // and will be updatable
    while(rs.next()){
        //Retrieve by column name
        int newAge = rs.getInt(1) + 5;
        rs.updateDouble( 1 , newAge );
        rs.updateRow();
    }

CONJ-389 - faster batch insert

Use dedicated [COM_STMT_BULK_EXECUTE |https://mariadb.com/kb/en/mariadb/com_stmt_bulk_execute/] protocol for batch insert when possible. (batch without Statement.RETURN_GENERATED_KEYS and streams) to have faster batch. (significant only if server MariaDB ≥ 10.2.7)

A new option "useBulkStmts" permit to deactivate this functionality.

useBulkStmtsUse dedicated COM_STMT_BULK_EXECUTE protocol for batch insert when possible. (batch without Statement.RETURN_GENERATED_KEYS and streams) to have faster batch. (significant only if server MariaDB ≥ 10.2.7)
Default: true. Since 2.1.0

other evolution

  • [CONJ-508] Connection.getCatalog() optimisation for 10.2+ server using new session_track_schema capabilities
  • [CONJ-492] Failover handle automatic reconnection on KILL command

Bug

  • [CONJ-502] isolation leak when using multiple pools on same VM on failover
  • [CONJ-503] regression on aurora Connection Connection.isReadOnly()
  • [CONJ-505] correcting issue that ended throwing "Unknown prepared statement handler given to mysqld_stmt_execute"
  • [CONJ-496] return rounded numeric when querying on a decimal field in place of throwing an exception for compatibility




Be notified of new releases automatically by subscribing to the announce 'at' mariadb.org announcement list (this is a low traffic, announce-only list).

MariaDB may already be included in your favorite OS distribution. More information can be found on the Distributions which Include MariaDB page.

Comments

Comments loading...