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

Edward Capriolo commented on CASSANDRA-6870:
--------------------------------------------

{quote}
I'm not sure I understand the point. Are you arguing that we should support 
read-before-write outside of paxos? In which case, as I said I'm not sure and I 
think this deserve it's own conversation.
{quote}
It would be this code path without the paxos overhead.  The user might have
1) optimistic concurrency.
2) an algorithm in which QUORUM satisfies the transformation without a need for 
locking.

An example of #2 might be. I have a wide row of counts per minute for the last 
hour. I know the last hour is over and I wish to consolidate this into a single 
column. So read row at quorum-> write new cell at quorum. This action is 
idempotent and would not require isolation or paxos.




> Transform operation
> -------------------
>
>                 Key: CASSANDRA-6870
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6870
>             Project: Cassandra
>          Issue Type: New Feature
>            Reporter: Edward Capriolo
>            Assignee: Edward Capriolo
>            Priority: Minor
>
> Compare and swap uses paxos to only update a value only if some criteria is 
> met. If I understand correctly we should be able to use this feature to 
> provide a wider variety of server side operations. 
> For example inside a paxos transaction performing a slice and then using a 
> function to manipulate the slice. You could accomplish features like append 
> and increment this way without user needing to know the current value.
> I took a stab at doing this. I **think** I did it correctly. Comments welcome.



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

Reply via email to