CQL3 handles columns/rows/keys differently than Cassandra itself
underneath. If you look closely you'll see that your real primary key
is in fact only a Long:

>       Key Validation Class: org.apache.cassandra.db.marshal.LongType

If you want to know more about it, check these 2 articles:

http://www.datastax.com/dev/blog/cql3-for-cassandra-experts
http://www.datastax.com/dev/blog/thrift-to-cql3
(Also note that there are differences in CQL3 between 1.1 an 1.2.)

This caused a bit of confusion for myself too a few days ago. It
should really be documented somewhere in the wiki (as a CQL upgrade
guide or something), not just be mentioned in the Datastax blog.

2012/10/31 Wei Zhu <wz1...@yahoo.com>:
> I try to use CQL3 to create CF with composite columns,
>
>  CREATE TABLE Friends (
>          ...     user_id bigint,
>          ...     friend_id bigint,
>          ...     status int,
>          ...     source int,
>          ...     created timestamp,
>          ...     lastupdated timestamp,
>          ...     PRIMARY KEY (user_id, friend_id, status, source)
>          ... );
>
>
> When I check it with cli, the composite type is a bit odd, why it's defined
> as Long, Int32, Int32, UTF8, is it supposed to be Long, Long, Int32, Int32?
> Did
> I do something wrong?
>
>  describe friends;
>     ColumnFamily: friends
>       Key Validation Class: org.apache.cassandra.db.marshal.LongType
>       Default column value validator:
> org.apache.cassandra.db.marshal.UTF8Type
>       Columns sorted by: org.apache.cassandra.db.marshal.CompositeType(
> org.apache.cassandra.db.marshal.LongType,
> org.apache.cassandra.db.marshal.Int32Type,
> org.apache.cassandra.db.marshal.Int32Type,
> org.apache.cassandra.db.marshal.UTF8Type)
>       GC grace seconds: 864000
>       Compaction min/max thresholds: 4/32
>       Read repair chance: 0.1
>       DC Local Read repair chance: 0.0
>       Replicate on write: true
>       Caching: KEYS_ONLY
>       Bloom Filter FP chance: default
>       Built indexes: []
>       Compaction Strategy:
> org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy
>       Compression Options:
>         sstable_compression:
> org.apache.cassandra.io.compress.SnappyCompressor
>
> Thanks.
> -Wei

Reply via email to