How do I insert a row with a TimeUUIDType column in Cassandra?

Posted by mixmasteralan on Stack Overflow See other posts from Stack Overflow or by mixmasteralan
Published on 2010-03-08T07:10:24Z Indexed on 2010/03/08 8:06 UTC
Read the original article Hit count: 1088

Filed under:
|
|

In Cassandra, I have the following Column Family:

<ColumnFamily CompareWith="TimeUUIDType" Name="Posts"/>

I'm trying to insert a record into it as follows using a C++ generated function generated by Thrift:

ColumnPath new_col;
new_col.__isset.column = true; /* this is required! */
new_col.column_family.assign("Posts");
new_col.super_column.assign("");
new_col.column.assign("1968ec4a-2a73-11df-9aca-00012e27a270");
client.insert("Keyspace1", "somekey", new_col, "Random Value", 1234, ONE);

However, I'm getting the following error: "UUIDs must be exactly 16 bytes"

I've even tried the Cassandra CLI with the following command:

set Keyspace1.Posts['somekey']['1968ec4a-2a73-11df-9aca-00012e27a270'] = 'Random Value'

but I still get the following error:

Exception null
InvalidRequestException(why:UUIDs must be exactly 16 bytes)
 at org.apache.cassandra.thrift.Cassandra$insert_result.read(Cassandra.java:11994)
 at org.apache.cassandra.thrift.Cassandra$Client.recv_insert(Cassandra.java:659)
 at org.apache.cassandra.thrift.Cassandra$Client.insert(Cassandra.java:632)
 at org.apache.cassandra.cli.CliClient.executeSet(CliClient.java:420)
 at org.apache.cassandra.cli.CliClient.executeCLIStmt(CliClient.java:80)
 at org.apache.cassandra.cli.CliMain.processCLIStmt(CliMain.java:132)
 at org.apache.cassandra.cli.CliMain.main(CliMain.java:173)

© Stack Overflow or respective owner

Related posts about cassandra

Related posts about thrift