fyi. Just curious to know the real reason behind "not to mix thrift and CQL3".

Any pointers?

-Vivek



---------- Forwarded message ----------
From: Vivek Mishra <mishra.v...@gmail.com>
Date: Fri, Aug 30, 2013 at 11:21 PM
Subject: Re: CQL & Thrift
To: u...@cassandra.apache.org



Hi,
I understand that, but i want to understand the reason behind such behavior?  
Is it because of maintaining different metadata objects for CQL3 and thrift?

Any suggestion?

-Vivek



On Fri, Aug 30, 2013 at 11:15 PM, Jon Haddad <j...@jonhaddad.com> wrote:

If you're going to work with CQL, work with CQL.  If you're going to work with 
Thrift, work with Thrift.  Don't mix.
>
>
>On Aug 30, 2013, at 10:38 AM, Vivek Mishra <mishra.v...@gmail.com> wrote:
>
>Hi,
>>If i a create a table with CQL3 as 
>>
>>
>>create table user(user_id text PRIMARY KEY, first_name text, last_name text, 
>>emailid text);
>>
>>
>>and create index as:
>>create index on user(first_name);
>>
>>
>>then inserted some data as:
>>insert into user(user_id,first_name,last_name,"emailId") 
>>values('@mevivs','vivek','mishra','vivek.mis...@impetus.co.in');
>>
>>
>>
>>
>>
>>Then if update same column family using Cassandra-cli as:
>>
>>
>>update column family user with key_validation_class='UTF8Type' and 
>>column_metadata=[{column_name:last_name, validation_class:'UTF8Type', 
>>index_type:KEYS},{column_name:first_name, validation_class:'UTF8Type', 
>>index_type:KEYS}];
>>
>>
>>
>>
>>
>>Now if i connect via cqlsh and explore user table, i can see column 
>>first_name,last_name are not part of table structure anymore. Here is the 
>>output:
>>
>>
>>CREATE TABLE user (
>>  key text PRIMARY KEY
>>) WITH
>>  bloom_filter_fp_chance=0.010000 AND
>>  caching='KEYS_ONLY' AND
>>  comment='' AND
>>  dclocal_read_repair_chance=0.000000 AND
>>  gc_grace_seconds=864000 AND
>>  read_repair_chance=0.100000 AND
>>  replicate_on_write='true' AND
>>  populate_io_cache_on_flush='false' AND
>>  compaction={'class': 'SizeTieredCompactionStrategy'} AND
>>  compression={'sstable_compression': 'SnappyCompressor'};
>>
>>
>>cqlsh:cql3usage> select * from user;
>>
>>
>> user_id
>>---------
>> @mevivs
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>I understand that, CQL3 and thrift interoperability is an issue. But this 
>>looks to me a very basic scenario.
>>
>>
>>
>>
>>
>>
>>Any suggestions? Or If anybody can explain a reason behind this?
>>
>>
>>-Vivek
>>
>>
>>
>>
>>
>>
>>
>>
>

Reply via email to