cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Or Sher <or.sh...@gmail.com>
Subject Setting TTL to entire row: UPDATE vs INSERT
Date Wed, 11 Jun 2014 06:30:29 GMT
Hi all,

I encountered a strange phenomena (at least I believe it's strange) when
trying to set a ttl for a whole row.
When trying to set a ttl for a row using update statement and updating all
values I'm getting kind of a "phantom cql row".
When trying to do the same thing using an insert statement it behaves as
expected.

Here is an example:

cqlsh:testks> use testks;
cqlsh:testks> create table test_table(
          ... p1 text,
          ... p2 text,
          ... c1 text,
          ... d1 text,
          ... d2 text,
          ... primary key ((p1,p2),c1)
          ... );
cqlsh:testks> insert into test_table (p1,p2,c1,d1,d2) values
('a','b','c','d','e');
cqlsh:testks> update test_table using ttl 10 set d1='---', d2='---' where
p1='a' and p2='b' and c1='c';
cqlsh:testks> select * from test_table;

 p1 | p2 | c1 | d1  | d2
----+----+----+-----+-----
  a |  b |  c | --- | ---

(1 rows)

cqlsh:testks> select * from test_table;

 p1 | p2 | c1 | d1   | d2
----+----+----+------+------
  a |  b |  c | null | null

(1 rows)

cqlsh:testks> insert into test_table (p1,p2,c1,d1,d2) values
('a','b','c','---','---') using ttl 10;
cqlsh:testks> select * from test_table;

 p1 | p2 | c1 | d1  | d2
----+----+----+-----+-----
  a |  b |  c | --- | ---

(1 rows)

cqlsh:testks> select * from test_table;

(0 rows)




Is this the expected behavior?
What's different in the delete and insert statement internally that results
in such a different behavior?
We're using C* 2.0.6

Thanks!
-- 
Or Sher

Mime
View raw message