Skip to content

Commit

Permalink
[misc] solving possible race condition
Browse files Browse the repository at this point in the history
  • Loading branch information
rusher committed Apr 11, 2017
1 parent 128675a commit a2f7e63
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 34 deletions.
59 changes: 28 additions & 31 deletions documentation/changelog.creole
@@ -1,5 +1,5 @@
= Changelog
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#200|2.0.0]] not Released
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#200|2.0.0]] Released on 11 Apr. 2017
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#158|1.5.9]] Released on 09 Mar. 2017
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#158|1.5.8]] Released on 10 Fev 2017
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#157|1.5.7]] Released on 12 Jan. 2016
Expand All @@ -19,29 +19,11 @@
* [[https://github.com/MariaDB/mariadb-connector-j/documentation/changelog.creole#140|1.4.0]] Released on 31 march 2016
---
== 2.0.0
== 2.0.0-RC

Java 8 and Java 7 have now separate maven artifacts, mostly due od java 8 time implementation.
Release candidate version.

java 8 maven repository artifact :

<dependencies>
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>

java 7 maven repository artifact :

<dependencies>
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client-jre7</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>
Java 8 is now minimum required version.

=== CONJ-318 : Handle CLIENT_DEPRECATE_EOF flag
Implement some protocol changes that permit to save some bytes.(part of https://jira.mariadb.org/browse/MDEV-8931).
Expand All @@ -60,21 +42,36 @@ When query ended before timeout, the scheduled task will be canceled.

If server is > 10.1.2, query timeout will be handle server side using "SET MAX_STATEMENT_TIME FOR" command.

=== [CONJ-402]
=== [CONJ-315]

Closing a Statement that was fetching a result-set (using Statement.setFetchSize) and all rows where not read at the time of closing, a kill query command
will be executed on close, to avoid having to parse all remaining results.

tcpKeepAlive option now default to true.
=== [CONJ-442]
Memory optimization : streaming query.
Very big command now doesn't use any intermediate buffer. Commands are send directly to socket avoiding using memory, This permit to send very large object (1G) without using any additional memory.

=== [CONJ-366]
Faster connection : bundle first commands in authentication packet
Driver execute different command on connection. Those queries are now send using pipeline (all queries are send, then only all results are reads).

New Options :
|=usePipelineAuth|Fast connection creation.//Default: true. Since 2.0.0//|

Usually pool will ensure that connection is still valid.
Since the process doesn't start until a connection has been idle for two hours (this time is OS dependant),
TCP keep alive after this time will ensure that socket is still OK..
=== [CONJ-368]
Parsing row result optimisation to avoid creating byte array to the maximum for faster results and less memory use.

=== [CONJ-409]
PrepareStatement.setObject(...) support for with java 8 temporal temporal object.
(Support for LocalDateTime, DateTime, ZoneDateTime, OffsetDateTime, OffsetTime)
=== Remaining JDBC 4.2 missing implementation :
- CONJ-414 - support for large update count [CONJ-414]
- CONJ-409 - PrepareStatement.setObject(...) support for with java 8 temporal temporal object.
- CONJ-411 - support for Statement maxFieldSize

=== Misc

* minor : set disableMariaDbDriver
* CONJ-443 - NullpointerException when making concurrent procedure calls
* CONJ-446 - ResultSet.getBigDecimal throwns NumberFormatException when value is an empty string
* CONJ-391 - Improve connection using SELECT in place of SHOW to avoid creating a mutex server side.
* CONJ-402 - tcpKeepAlive option now default to true.
== 1.5.9
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Expand Up @@ -20,7 +20,7 @@
<driver.version.major>2</driver.version.major>
<driver.version.minor>0</driver.version.minor>
<driver.version.patch>0</driver.version.patch>
<driver.version.qualifier>SNAPSHOT</driver.version.qualifier>
<driver.version.qualifier>RC</driver.version.qualifier>
<driver.version>${driver.version.major}.${driver.version.minor}.${driver.version.patch}-${driver.version.qualifier}</driver.version>
</properties>

Expand Down
Expand Up @@ -51,9 +51,9 @@ WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWIS
package org.mariadb.jdbc.internal.util.constant;

public final class Version {
public static final String version = "2.0.0-SNAPSHOT";
public static final String version = "2.0.0-RC";
public static final int majorVersion = 2;
public static final int minorVersion = 0;
public static final int patchVersion = 0;
public static final String qualifier = "-SNAPSHOT";
public static final String qualifier = "-RC";
}

0 comments on commit a2f7e63

Please sign in to comment.