cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peter Bailis (JIRA)" <j...@apache.org>
Subject [jira] [Comment Edited] (CASSANDRA-7056) Add RAMP transactions
Date Wed, 25 Jun 2014 17:20:26 GMT

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

Peter Bailis edited comment on CASSANDRA-7056 at 6/25/14 5:19 PM:
------------------------------------------------------------------

> RAMP has a requirement that anything being read/written that way is always written in
the same groupings. If you update B,C and then update A,B. You can't read B,C anymore successfully,
as the times on B and C will never match.

This isn't entirely correct. Let's say I do an atomic batch B1 that writes B = 1 and C = 1
with timestamp 1, then you do an atomic batch B2 that writes A = 2 and B = 2 at timestamp
2. Under RAMP, subsequent batch reads from B and C will return B = 2, C = 1. The timestamps
on B and C will indeed (as you point out) not match, but simply returning matching timestamps
is *not* the goal: the goal is that if you read any write in a given batch, you will be able
to read the rest of the writes in the batch (i.e., if you also attempt to read any other items
that were written in the batch, you will see the corresponding writes).



was (Author: pbailis):
> RAMP has a requirement that anything being read/written that way is always written in
the same groupings. If you update B,C and then update A,B. You can't read B,C anymore successfully,
as the times on B and C will never match.

This isn't entirely correct. Let's say I do an atomic batch B1 that writes B = 1 and C = 1
with timestamp 1, then you do an atomic batch B2 that writes A = 2 and B = 2 at timestamp
2. Under RAMP, subsequent batch reads from B and C will return B = 2, C = 1. The timestamps
on B and C will indeed (as you point out) not match, but simply returning matching timestamps
is *not* the goal: the goal is that if you read any write in a given batch, you will read
the rest of the writes in the batch (to the items you requested in the batch read)


> Add RAMP transactions
> ---------------------
>
>                 Key: CASSANDRA-7056
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-7056
>             Project: Cassandra
>          Issue Type: Wish
>          Components: Core
>            Reporter: Tupshin Harper
>            Priority: Minor
>
> We should take a look at [RAMP|http://www.bailis.org/blog/scalable-atomic-visibility-with-ramp-transactions/]
transactions, and figure out if they can be used to provide more efficient LWT (or LWT-like)
operations.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message