[ 
https://issues.apache.org/jira/browse/CASSANDRA-2500?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13070176#comment-13070176
 ] 

Kelley Reynolds commented on CASSANDRA-2500:
--------------------------------------------

cassandra-thrift *does* do the same thing as fauna .. that's the point. Right 
now, there is no canonical source for the generated thrift bindings for 
Cassandra, it just so happens that the Twitter guys keep them up to date in 
their gem. To somebody's point earlier, those raw bindings should be maintained 
within and released when there is a Cassandra release. Here is a pseudo-outline 
of dependencies

-> cassandra-thrift (the raw gen-rb bindings only, no more, no less)
---> thrift_client (optional wrapper around *any* thrift client)
-----> dbd-cassandra (for the DBI framework)
-----> fauna/cassandra (would no longer be required to gen-rb in this scenario, 
no duplication)
-----> activerecord adapter (Ruby on Rails crowd)
-----> dm-cassandra (datamapper for that crowd)
-----> whatever

It's not quite accurate in that thrift_client doesn't depend on 
cassandra-thrift specifically, but pretend it does. The high level clients like 
dbd-cassandra, fauna/cassandra, etc don't *need* to use thrift_client but could 
(and some do). In this scenario there is no duplication of code, the client 
APIs can evolve independently of the thrift bindings, the thrift bindings don't 
require a re-release of the high level client, and thrift_client is completely 
optional as it's just sugar on top of the raw thrift client and has nothing 
specifically to do with anything. Hopefully that helped.



> Ruby dbi client (for CQL) that conforms to AR:ConnectionAdapter
> ---------------------------------------------------------------
>
>                 Key: CASSANDRA-2500
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2500
>             Project: Cassandra
>          Issue Type: Task
>          Components: API
>            Reporter: Jon Hermes
>            Assignee: Pavel Yaskevich
>              Labels: cql
>             Fix For: 0.8.3
>
>         Attachments: 2500.txt, genthriftrb.txt, rbcql-0.0.0.tgz
>
>
> Create a ruby driver for CQL.
> Lacking something standard (such as py-dbapi), going with something common 
> instead -- RoR ActiveRecord Connection Adapter 
> (http://api.rubyonrails.org/classes/ActiveRecord/ConnectionAdapters/AbstractAdapter.html).

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to