cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Aleksey Yeschenko (JIRA)" <>
Subject [jira] [Resolved] (CASSANDRA-5200) Add a way to cancel TTL on a column (without changing value)
Date Fri, 18 Mar 2016 21:24:33 GMT


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:
>             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

View raw message