cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Robert Stupp (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-7692) Upgrade Cassandra Java Driver to 2.1
Date Fri, 03 Oct 2014 21:51:34 GMT


Robert Stupp commented on CASSANDRA-7692:

I thought a bit about using the Java Driver for the UDF with user-types, tuple-types and collections.

Although I like the idea to reuse code in Java Driver, it feels a bit strange to use the Java
Driver for that due to the Netty major version mismatch in C* and the driver.

I see these options:

1. Move java-driver to some {{$CASSANDRA_HOME/lib/internal-only}} directory. But that might
not work for all configurations (e.g. embedded C* and use of another Java driver version)
1. Wait until the [netty update (JAVA-352)|]
is done. But ties both the driver and C* to the same Netty version - forever.
1. Basically copy UDT, tuple and collection serialization code from java driver and adopt
it (refactor to org.apache.cassandra..., remove unused code, etc): Feels like the easiest
solution. No dependency foo. Can reuse existing schema information in {{KSMetaData}} / {{UTMetaData}}
1. Split the java driver into separate artifacts. Feels complex. Seems to be lot of work and
makes driver code more complex.

I'd propose option 3.
Also AFAIK {{ListType}}, {{SetType}} and {{MapType}} are already able to serialize with (primitive)
So we could add that functionality to {{UserType}} and {{TupleType}} - maybe via different
methods since UT and TT currently serialize using {{BytesSerializer}}.

Just for information - common dependencies of java-driver and C* are:
||library||Java Driver||C*
|codahale-metrics|3.0.2|(C* might use that in future)


> Upgrade Cassandra Java Driver to 2.1
> ------------------------------------
>                 Key: CASSANDRA-7692
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Robert Stupp
>            Assignee: Robert Stupp
>             Fix For: 3.0
>         Attachments: 7692-2.1.txt, 7692-3.0.txt, 7692-3.0v2.txt
> UDFs (CASSANDRA-7563) requires Java Driver that supports User Types and new collection
features (at least Java Driver 2.1).
> May also be handled separately if e.g. Hadoop stuff requires this (follow-up to CASSANDRA-7618).

This message was sent by Atlassian JIRA

View raw message