MariaDB Java Client 1.1.3 Released

The MariaDB project is pleased to announce the immediate availability of the MariaDB Java Client 1.1.3. This is a Stable (GA) release. See the Release Notes andChangelog for detailed information on this release and the About the MariaDB Java Client page in the AskMonty Knowledgebase for general information about the client.

RELEASE NOTES CHANGELOG ABOUT THE MARIADB JAVA CLIENT

New functionality

  • On Windows, it is now possible to use named pipes if server enables them. To connect to the server using named pipe, pass pipe=<pipe_name> URL parameter or property. The pipe filename name should be passed without the\pipe<machine> prefix. (CONJ-36)
  • It is now possible to do SSL validation for self signed certificates, usingserverSslCert, (provide CA certificate for the server’s certificate). It allows to avoid SSL handshake errors (untrusted CA) when working with self-signed certificates, and is more secure than the existing trustServerCertificate option. (CONJ-48)

Bugs fixed in this release

Some of the bugs fixed include the following:

  • Change assertion in PacketOutputStream.startPacket() to be IOException, so it can be caught. “Last packet not finished” condition can happen , if underlying stream is broken (e.g write operation failed) (CONJ-34)
  • If custom SocketFactory creates an already connected socket, do not execute Socket.connect() (CONJ-37)
  • Ensure proper locking in MySQLCallableStatement.execute(), in scenarios that use single connection simultaneously from multiple threads. Hold the connection lock for the duration of 3 operations – setting parameters , executing statement, and reading off output parameters) (CONJ-38)
  • For multi-row inserts, getGeneratedKeys() will return ResultSet with multiple entries (CONJ-39)
  • java.util.Date can now be passed to PreparedStatement.setObject(). (CONJ-40)
  • Allow for missing space it temporal escapes, for better compatibility with ConnectorJ (CONJ-42)
  • PreparedStatement.getResultSetMetaData() called before query execution threw exception, if query string contained at least once placeholder (CONJ-43)
  • DatabaseMetaData.getPrimaryKeys() returned incorrect value in KEY_SEQ column (CONJ-41)
  • (Performance enhancement) Changed DatabaseMetadata.getImportedKeys()not to use information schema, but to parse the output of “show create table” instead. This considerably speeds up several scenarios involving Hibernate (CONJ-35)
  • Fixed ResultSet.getDisplaySize() for character columns – due to UTF-8 usage it was 3x more than expected (size in bytes, instead of size in chars)
  • Fix bug in prepared statement parsing code (skipping next character after backslash ”)(CONJ-44)
  • Fix Statement.executeBatch() methods to throw BatchUpdateException, as in JDBC spec (CONJ-47)