acid-semantics.html - clarify some of the concepts
--------------------------------------------------

                 Key: HBASE-3910
                 URL: https://issues.apache.org/jira/browse/HBASE-3910
             Project: HBase
          Issue Type: Bug
          Components: documentation
         Environment: Any.
            Reporter: Doug Meil
            Assignee: Doug Meil
            Priority: Minor


A client can do a write to a client side 'write buffer' if enabled via 
hTable.setAutoFlush(false). Now, assume a client puts value v under key k. Two 
wrongs things can happen, violating the ACID semantics  of Hbase given at: 
http://hbase.apache.org/acid-semantics.html

1) Say the client fails immediately after the put succeeds. In this case, the 
put will be lost, violating the durability property:

<quote> Any operation that returns a "success" code (eg does not throw an 
exception) will be made durable. </quote>
 
2) Say the client issues a read for k immediately after writing k. The put will 
be stored in the client side write buffer, while the read will go to the region 
server, returning an older value, instead of v, violating the visibility 
property:

<quote>
When a client receives a "success" response for any mutation, that mutation
is immediately visible to both that client and any client with whom it later
communicates through side channels.
</quote>

Thanks,
Tallat



--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to