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

Sylvain Lebresne commented on CASSANDRA-12868:
----------------------------------------------

bq. Either the TTL configuration should not be accepted in the materialized 
view creation

That. I agree that accepting the parameters but ignoring them is confusing and 
we should fix that. That's why I'm going to actually promote that as a bug and 
rephrase the description if you don't mind.

Accepting different TTL settings for views and the base has never been the 
intent, and that would kind of break the idea that the view is a view of the 
base table. Even if we were fine with that, it's a can of worms: if you allow 
the base table to expire more quickly, you might lose the ability to properly 
update some view entries for instance. Without saying we should never ever 
consider the option, suffice to say that we have more important things to do on 
MVs before considering that, and so let's focus on fixing the lack of 
validation for now.

> TTL Configuration for Materialized view is not at all used and TTL is always 
> used from Parent table.
> ----------------------------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-12868
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-12868
>             Project: Cassandra
>          Issue Type: Wish
>            Reporter: Srinivasarao Daruna
>
> Hi,
> By default, materialized views are using the TTL of primary table, 
> irrespective of the configured value provided in materialized view creation.
> For eg:
> table:
> CREATE TABLE test2(id text, date text, col1 text,col2 text, PRIMARY 
> KEY(id,date)) WITH default_time_to_live = 60 AND CLUSTERING ORDER BY (date 
> DESC);
> CREATE MATERIALIZED VIEW test3_view AS
> SELECT id, date, col1
> FROM test3 
> WHERE id IS NOT NULL AND date IS NOT NULL
> PRIMARY KEY(id,date) WITH default_time_to_live = 30;
> The queries are accepted in CQL. As per the detail, it should use 30 seconds 
> for Materialized view and 60 seconds for parent table.
> But, it is always 60 seconds (as the parent table)
> case 1: 
> parent table and materialized view with different TTL
> MV will always have the TTL of parent.
> case 2:
> Parent table without TTL but materialized view with TTL
> MV does not have the TTL even though the configuration has been accepted in 
> the table creation.
> Expected:
> Either the TTL configuration should not be accepted in the materialized view 
> creation, if it is of no value.
> Or
> TTL has to be applied differently for both Materialized View and Table if the 
> configuration is added.
> If no configuration, TTL has to be taken from the parent table. 



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to