cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Dave Carlson (JIRA)" <>
Subject [jira] [Commented] (CASSANDRA-2888) CQL support for JDBC DatabaseMetaData
Date Tue, 12 Jul 2011 19:01:59 GMT


Dave Carlson commented on CASSANDRA-2888:

I'm using the 1.0.3 version right now but I'll test it against the latest.  I don't believe
this fits the roadmap (this is still in DriverManager land).  The enhancement in my mind would
provide compatibility - I wouldn't expect any complicated features.

I'm currently evaluating the use of Cassandra as a drop-in from what is currently an Oracle
installation - heavily tied to the use of JDBC with calls to Connection.getMetaData().  In
the 1.0.3 source that raised an exception which barred CQL from use as a drop-in.

To that end, I did write some code that does allow it to be dropped in to that situation successfully,
but made a lot of cowboy assumptions along the way.  

Basically, I created a CassandraMetaData class that CassandraConnection.getMetaData creates
that supports getURL() and hardcoded get{DatabaseProduct,Driver}{Name,Version}.  I walked
through the methods to support by popping it into DbVisualizer and progressing through the
exceptions - of course nowhere complete for DbVisualizer functionality but good enough for
the drop-in to the installation I support.

> CQL support for JDBC DatabaseMetaData
> -------------------------------------
>                 Key: CASSANDRA-2888
>                 URL:
>             Project: Cassandra
>          Issue Type: Improvement
>          Components: Drivers
>    Affects Versions: 0.8.1
>         Environment: J2SE 1.6.0_22 x64 on Fedora 15
>            Reporter: Dave Carlson
>            Assignee: Rick Shaw
>            Priority: Minor
>              Labels: cql, newbie
>   Original Estimate: 96h
>  Remaining Estimate: 96h
> In order to increase the drop-in capability of CQL to existing JDBC app bases, CQL must
be updated to include at least semi-valid responses to the JDBC metadata portion.
> without enhancement:
> >>> com.largecompany.JDBCManager.getConnection("<vague Cassandra JNDI pointer>")
> Resource has error: java.lang.UnsupportedOperationException: method not supported
> ...
> with enhancement:
> >>> com.largecompany.JDBCManager.getConnection("<vague Cassandra JNDI pointer>")
> org.apache.cassandra.cql.jdbc.CassandraConnection@1915470e

This message is automatically generated by JIRA.
For more information on JIRA, see:


View raw message