[RELEASE] DataStax Java driver 2.2.0-rc2

65 views
Skip to first unread message

Olivier Michallat

unread,
Jul 28, 2015, 6:18:32 AM7/28/15
to java-dri...@lists.datastax.com
We've just released version 2.2.0-rc2 of the driver.

The 2.2 branch focuses on compatibility with Cassandra 2.2 and native protocol v4.

In addition, this release brings a long-awaited feature: custom column codecs[1]. This will let you plug your own logic to convert CQL types to arbitrary Java types (a common use case is to use Joda or Java 8 date and time types instead of the driver's defaults).

We’re keeping 2.2 in "release candidate" status to allow community feedback on custom codecs before they go GA. We encourage you to test the feature and give us your opinion. You can find examples of custom codecs in the test classes ([2], [3], [4]). In future versions, we will likely provide the most common codecs as a separate module.

This release is NOT BINARY COMPATIBLE with the 2.1 branch. See the upgrade guide[5] for more information.

Here is the complete changelog:

- [improvement] Rename DateWithoutTime to LocalDate (JAVA-810)
- [bug] DateCodec does not format values correctly (JAVA-816)
- [bug] TimeCodec does not format values correctly (JAVA-817)
- [bug] TypeCodec.getDataTypeFor() does not handle LocalDate instances (JAVA-818)
- [improvement] Make ResultSet#fetchMoreResult return a
  ListenableFuture<ResultSet> (JAVA-836)
- [improvement] Disable frozen checks in mapper (JAVA-843)
- [improvement] Allow user to register custom type codecs (JAVA-721)
- [improvement] Support custom type codecs in mapper (JAVA-722)

Merged from 2.1 branch:

- [bug] Special case check for 'null' string in index_options column (JAVA-834)
- [improvement] Allow accessor methods with less parameters in case
  named bind markers are repeated (JAVA-835)
- [improvement] Improve QueryBuilder API for SELECT DISTINCT (JAVA-475)
- [improvement] Make NativeColumnType a top-level class (JAVA-715)
- [improvement] Expose ProtocolVersion#toInt (JAVA-700)
- [bug] Handle void return types in accessors (JAVA-542)
- [improvement] Create values() function for Insert builder using List (JAVA-225)
- [improvement] HashMap throws an OOM Exception when logging level is set to TRACE (JAVA-713)
- [bug] Support bind marker in QueryBuilder DELETE's list index (JAVA-679)
- [improvement] Expose KEYS and FULL indexing options in IndexMetadata (JAVA-732)
- [improvement] Allow @Enumerated in Accessor method parameters (JAVA-589)
- [improvement] Allow access to table metadata from Mapper (JAVA-554)
- [improvement] Provide a way to map computed fields (JAVA-661)
- [improvement] Ignore missing columns in mapper (JAVA-824)
- [bug] Preserve default timestamp for retries and speculative executions (JAVA-724)
- [improvement] Use same pool implementation for protocol v2 and v3
  (JAVA-738).
- [improvement] Support CONTAINS / CONTAINS KEY in QueryBuilder (JAVA-677)
- [improvement] Add USING options in mapper for delete and save
  operations (JAVA-477/JAVA-540)
- [improvement] Add mapper option to configure whether to save null fields (JAVA-473)

Merged from 2.0 branch:

- [bug] DowngradingConsistencyRetryPolicy ignores write timeouts (JAVA-737)
- [bug] Forbid bind marker in QueryBuilder add/append/prepend (JAVA-736)
- [bug] Prevent QueryBuilder.quote() from applying duplicate double quotes (JAVA-712)
- [bug] Prevent QueryBuilder from trying to serialize raw string (JAVA-688)
- [bug] Support bind marker in QueryBuilder DELETE's list index (JAVA-679)
- [improvement] Improve QueryBuilder API for SELECT DISTINCT (JAVA-475)
- [improvement] Create values() function for Insert builder using List (JAVA-225)
- [improvement] Warn when ReplicationStrategy encounters invalid
  replication factors (JAVA-702)
- [improvement] Add PoolingOptions method to set both core and max
  connections (JAVA-662).
- [improvement] Do not include epoll JAR in binary distribution (JAVA-766)
- [improvement] Optimize internal copies of Request objects (JAVA-726)
- [bug] Preserve tracing across retries (JAVA-815)
- [improvement] New RetryDecision.tryNextHost() (JAVA-709)
- [bug] Handle function calls and raw strings as non-idempotent in QueryBuilder (JAVA-733)


The driver is available from Maven:

    <dependency>
      <groupId>com.datastax.cassandra</groupId>
      <artifactId>cassandra-driver-core</artifactId>
      <version>2.2.0-rc2</version>
    </dependency>

And as a binary distribution[6].

The online javadoc[7] will be updated later today.


--

The Java driver team

Reply all
Reply to author
Forward
0 new messages