[jira] [Commented] (CASSANDRA-6750) Support for UPDATE predicates
[ https://issues.apache.org/jira/browse/CASSANDRA-6750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14248078#comment-14248078 ] Sylvain Lebresne commented on CASSANDRA-6750: - I'm not entirely sure we should support this at all because that would require a read-before-write and I'd prefer leaving that kind of thing explicit to the user (by issuing a select, and then an update). And before someone bring this up, I'm well aware that we already have a read-before-write for lists, but that's more an example of a mistake we made and shouldn't reproduce than anything else. Support for UPDATE predicates - Key: CASSANDRA-6750 URL: https://issues.apache.org/jira/browse/CASSANDRA-6750 Project: Cassandra Issue Type: New Feature Components: API, Core Environment: 2.0.3 Reporter: nivance Assignee: Benjamin Lerer Priority: Minor Labels: cql3, ponies cqlsh:spdatarp UPDATE t_spdatarpro_ro SET amount = 10 WHERE messageid = '123456'; Bad Request: Non PRIMARY KEY messageid found in where clause In this case, messageid is the secend index. I want to update all rows which messageid is '123456', but it failed -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6750) Support for UPDATE predicates
[ https://issues.apache.org/jira/browse/CASSANDRA-6750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14248233#comment-14248233 ] Aleksey Yeschenko commented on CASSANDRA-6750: -- Agreed. We must not introduce any more implicit read-before-write ops. Some convenience is not worth breaking write request assumptions for. Support for UPDATE predicates - Key: CASSANDRA-6750 URL: https://issues.apache.org/jira/browse/CASSANDRA-6750 Project: Cassandra Issue Type: New Feature Components: API, Core Environment: 2.0.3 Reporter: nivance Assignee: Benjamin Lerer Priority: Minor Labels: cql3, ponies cqlsh:spdatarp UPDATE t_spdatarpro_ro SET amount = 10 WHERE messageid = '123456'; Bad Request: Non PRIMARY KEY messageid found in where clause In this case, messageid is the secend index. I want to update all rows which messageid is '123456', but it failed -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6750) Support for UPDATE predicates
[ https://issues.apache.org/jira/browse/CASSANDRA-6750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14248263#comment-14248263 ] Benjamin Lerer commented on CASSANDRA-6750: --- I think that part of the problem here is the fact that for years people have worked with SQL where this operation is perfectly normal (I do not know any serious relational database that do not support that). I know that we have other problem that relational database do not have but from a user point of view it is not obvious and it is really confusing. What is the problem of read before write? Support for UPDATE predicates - Key: CASSANDRA-6750 URL: https://issues.apache.org/jira/browse/CASSANDRA-6750 Project: Cassandra Issue Type: New Feature Components: API, Core Environment: 2.0.3 Reporter: nivance Assignee: Benjamin Lerer Priority: Minor Labels: cql3, ponies cqlsh:spdatarp UPDATE t_spdatarpro_ro SET amount = 10 WHERE messageid = '123456'; Bad Request: Non PRIMARY KEY messageid found in where clause In this case, messageid is the secend index. I want to update all rows which messageid is '123456', but it failed -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-6750) Support for UPDATE predicates
[ https://issues.apache.org/jira/browse/CASSANDRA-6750?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14248492#comment-14248492 ] Aleksey Yeschenko commented on CASSANDRA-6750: -- In this case it's not just a regular read before write (which we used to do until 1.2? for index updates, out of necessity, which we still do for counters (locally) and for lists (a design mistake)). This would require a 2i read before write, potentially a very expensive one, and unpredictable in general. Such writes would also not be retriable in an idempotent fashion, which is a big no-no when it comes to C* writes. Support for UPDATE predicates - Key: CASSANDRA-6750 URL: https://issues.apache.org/jira/browse/CASSANDRA-6750 Project: Cassandra Issue Type: New Feature Components: API, Core Environment: 2.0.3 Reporter: nivance Assignee: Benjamin Lerer Priority: Minor Labels: cql3, ponies cqlsh:spdatarp UPDATE t_spdatarpro_ro SET amount = 10 WHERE messageid = '123456'; Bad Request: Non PRIMARY KEY messageid found in where clause In this case, messageid is the secend index. I want to update all rows which messageid is '123456', but it failed -- This message was sent by Atlassian JIRA (v6.3.4#6332)