[ 
https://issues.apache.org/jira/browse/HBASE-3903?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Doug Meil updated HBASE-3903:
-----------------------------

    Attachment:     (was: acid-semantics_HBASE_3903.xml.patch)

> A successful write to client write-buffer may be lost or not visible
> --------------------------------------------------------------------
>
>                 Key: HBASE-3903
>                 URL: https://issues.apache.org/jira/browse/HBASE-3903
>             Project: HBase
>          Issue Type: Bug
>          Components: documentation
>         Environment: Any.
>            Reporter: Tallat
>            Assignee: Doug Meil
>              Labels: documentation
>         Attachments: acid-semantics_HBASE_3903.xml.patch
>
>
> 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