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

William Slacum edited comment on ACCUMULO-1000 at 6/5/13 3:19 PM:
------------------------------------------------------------------

It seems the implementation Keith gave is for compare and swap, not compare and 
set. This means that my pre-commit check is an equality operation, which may 
not be enough. One example that's always used is a bank account- when another 
person makes a charge to a bank account, they don't necessarily care that the 
account balance is the same as some initial check (ie, you said you have $100 
but the bank says you have $90), I only care that the amount covered by the 
charged exists in the bank account (ie, this gumbo cost $50 and you have $90, 
you may pass go).

I think we could hammer in this functionality by using an iterator that checks 
the precondition and returns a boolean- have you thought about how to add in 
that to {{ConditionalMutation}}? 
                
      was (Author: bills):
    It seems the implementation Keith gave is for compare and swap, not compare 
and set. This means that my pre-commit check is an equality operation, which 
may not be enough. Once example that's always used is a bank account- when 
another person makes a charge to a bank account, they don't necessarily care 
that the account balance is the same as some initial check (ie, you said you 
have $100 but the bank says you have $90), I only care that the amount covered 
by the charged is exists in the bank account (ie, this gumbo cost $50 and you 
have $90, you may pass go).

I think we could hammer in this functionality by using an iterator that checks 
the precondition and returns a boolean- have you thought about how to add in 
that to {{ConditionalMutation}}? 
                  
> support compare and set
> -----------------------
>
>                 Key: ACCUMULO-1000
>                 URL: https://issues.apache.org/jira/browse/ACCUMULO-1000
>             Project: Accumulo
>          Issue Type: New Feature
>          Components: client, tserver
>            Reporter: Keith Turner
>            Assignee: Keith Turner
>             Fix For: 1.6.0
>
>         Attachments: ACCUMULO-1000-proposal-01.html, 
> ACCUMULO-1000-proposal-01.txt
>
>
> Add support to mutation for compare and set operations.  This would allow 
> user to specify that a row must contain certain data for a mutation to be 
> applied.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to