You didn’t specify which version of 2.0 you were on.

There were a number of inconsistencies with static columns fixed in 2.0.10

for example CASSANDRA-7490, and CASSANDRA-7455, but there were others, and the 
same bugs may have caused a bunch of other issues.

It very much depends exactly how you insert data (and indeed I believe is a 
rare case where an UPDATE is not equivalent to an INSERT) whether a partition 
exists when it only has static columns. The behavior you see does make sense 
though, in that it should be possible to insert static data only, and thus at 
the partition key must exist (so it is entirely reasonable to create CQL rows 
which have no actual - i.e. all null - values). Taking it a step further if you 
have TTL on all non static (clustering and data) columns, you don’t 
(necessarily) want the static data to disappear when the other cells do - 
though you can achieve this with statement wide TTL-ing on insertion of the 
static data.

> On Dec 3, 2015, at 6:31 PM, Robert Wille <rwi...@fold3.com> wrote:
> 
> With this schema:
> 
> CREATE TABLE roll (
> id INT,
> image BIGINT,
> data VARCHAR static,
> PRIMARY KEY ((id), image)
> ) WITH gc_grace_seconds = 3456000 AND compaction = { 'class' : 
> 'LeveledCompactionStrategy', 'sstable_size_in_mb' : 160 };
> 
> if I run SELECT image FROM roll WHERE id = X on 2.0, where partition X has 
> only static data, no rows were returned. In 2.1.11, it returns one row with a 
> null value. Was this change in behavior intentional? Is there an option to 
> get the old behavior back? I potentially have broken code anywhere that I 
> access a table with a static column. Kind of a mess, and not the kind of 
> thing a person expects when upgrading.
> 
> Thanks
> 
> Robert
> 

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to