[ https://issues.apache.org/jira/browse/CASSANDRA-5200?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Aleksey Yeschenko resolved CASSANDRA-5200. ------------------------------------------ Resolution: Won't Fix The raciness you mention is inherent to this approach. If you move the read before write to the server, C* being a distributed system, you just move the race to C* itself. This cannot - easily - be done without imposing coordination/locking, which is an anti-pattern in C*. Closing as Won't Fix. > Add a way to cancel TTL on a column (without changing value) > ------------------------------------------------------------ > > Key: CASSANDRA-5200 > URL: https://issues.apache.org/jira/browse/CASSANDRA-5200 > Project: Cassandra > Issue Type: New Feature > Reporter: Anentropic > Priority: Minor > Labels: ponies > > Currently you can set TTL on a column value: > UPDATE table USING TTL 30 SET col1='test' WHERE id=123; > The only way to cancel the TTL, so that col1='test' doesn't expire, is to set > col1 to a new value. > If you want col1 to keep its current value but stop expiring I don't see a > reliable way. You (understandably) can't do: > UPDATE table SET col1=col1 WHERE id=123; > And obviously if you have to SELECT the value first you have a race condition. > I understand the reasons for not allowing SET col1=col1 but I'm guessing it > wouldn't be too hard to allow some way to cancel the TTL without having to > set a value? -- This message was sent by Atlassian JIRA (v6.3.4#6332)