Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-4924

Make CQL 3 data accessible via thrift.


    • Type: Improvement
    • Status: Resolved
    • Priority: Normal
    • Resolution: Fixed
    • Fix Version/s: 1.2.0 beta 3
    • Component/s: None
    • Labels:


      Following the changes from CASSANDRA-4377 data created using CQL 3 is not visible via the thrift interface.

      This goes against the spirit of many comments by the project that "the thrift API is not going away". These statements and ones such as "Internally, both CQL3 and thrift use the same storage engine, so all future improvements to this engine will impact both of them equally." (http://www.datastax.com/dev/blog/thrift-to-cql3) and the CQL3 and thrift examples given here http://www.datastax.com/dev/blog/cql3-for-cassandra-experts gave the impression CQL 3 was a layer on top of the core storage engine. It now appears to be an incompatible format change.

      It makes it impossible to explain to existing using users how CQL 3 stores it's data.

      It also creates an all or nothing approach to trying CQL 3.

      My request is to make all data written by CQL 3 readable via the thrift API.

      An example of using the current 1.2 trunk is below:

      cqlsh:cass_college> CREATE TABLE UserTweets 
                      ... (
                      ...     tweet_id    bigint,
                      ...     user_name   text,
                      ...     body        text,
                      ...     timestamp   timestamp,
                      ...     PRIMARY KEY (user_name, tweet_id)
                      ... );
      cqlsh:cass_college> INSERT INTO 
                      ...     UserTweets
                      ...     (tweet_id, body, user_name, timestamp)
                      ... VALUES
                      ...     (1, 'The Tweet', 'fred', 1352150816917);
      cqlsh:cass_college> select * from UserTweets;
       user_name | tweet_id | body      | timestamp
            fred |        1 | The Tweet | 2012-11-06 10:26:56+1300

      and in the CLI

      [default@cass_college] show schema;
      create keyspace cass_college
        with placement_strategy = 'SimpleStrategy'
        and strategy_options = {replication_factor : 3}
        and durable_writes = true;
      use cass_college;
      [default@cass_college] list UserTweets;
      UserTweets not found in current keyspace.


          Issue Links



              • Assignee:
                jbellis Jonathan Ellis
                amorton amorton
                Jonathan Ellis
                Jason Brown
              • Votes:
                0 Vote for this issue
                7 Start watching this issue


                • Created: