You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Paulo Motta (JIRA)" <ji...@apache.org> on 2017/11/27 13:50:00 UTC

[jira] [Commented] (CASSANDRA-14071) Materialized view on table with TTL issue

    [ https://issues.apache.org/jira/browse/CASSANDRA-14071?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16266827#comment-16266827 ] 

Paulo Motta commented on CASSANDRA-14071:
-----------------------------------------

Thanks for the bug report and reproduction steps. I think that this may be related to CASSANDRA-11500. Will have a look later this week (cc [~jasonstack])

> Materialized view on table with TTL issue
> -----------------------------------------
>
>                 Key: CASSANDRA-14071
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-14071
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Coordination, Materialized Views
>         Environment: Cassandra 3
>            Reporter: Silviu Butnariu
>
> Materialized views that cluster by a column that is not part of table's PK and are created from tables that have *default_time_to_live* seems to malfunction.
> Having this table
> {code:java}
> CREATE TABLE sbutnariu.test_bug (
>     field1 smallint,
>     field2 smallint,
>     date timestamp,
>     PRIMARY KEY ((field1), field2)
> ) WITH default_time_to_live = 1000;
> {code}
> and the materialized view
> {code:java}
> CREATE MATERIALIZED VIEW sbutnariu.test_bug_by_date AS SELECT * FROM sbutnariu.test_bug WHERE field1 IS NOT NULL AND field2 IS NOT NULL AND date IS NOT NULL PRIMARY KEY ((field1), date, field2) WITH CLUSTERING ORDER BY (date desc, field2 asc);
> {code}
> After inserting 3 rows with same PK (should upsert), the materialized view will have 3 rows.
> {code:java}
> insert into sbutnariu.test_bug(field1, field2, date) values (1, 2, toTimestamp(now()));
> insert into sbutnariu.test_bug(field1, field2, date) values (1, 2, toTimestamp(now()));
> insert into sbutnariu.test_bug(field1, field2, date) values (1, 2, toTimestamp(now()));
> select * from sbutnariu.test_bug; /*1 row*/
> select * from sbutnariu.test_bug_by_date;/*3 rows*/
> {code}
> If I remove the ttl and try again, it works as expected:
> {code:java}
> truncate sbutnariu.test_bug;
> alter table sbutnariu.test_bug with default_time_to_live = 0;
> select * from sbutnariu.test_bug; /*1 row*/
> select * from sbutnariu.test_bug_by_date;/*1 row*/
> {code}
> I've tested on versions 3.0.14 and 3.0.15. The bug was introduced in 3.0.15, as in 3.0.14 it works as expected.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cassandra.apache.org
For additional commands, e-mail: commits-help@cassandra.apache.org