hbase-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "dhruba borthakur (Commented) (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HBASE-4528) The put operation can release the rowlock before sync-ing the Hlog
Date Sat, 08 Oct 2011 08:03:29 GMT

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

dhruba borthakur commented on HBASE-4528:
-----------------------------------------

It appears to me that deleting kvs from the memstore (as part of the transaction rollback)
should be ok. It is done without the rowlock because the kvs are not yet visible to scanners
because the rwcc is not yet advanced. 

One doubtful case is when a thread A is trying to insert kv via a Put call.  Thread A inserted
into memstore but has failed to sync to wal. Now suppose another thread B has concurrently
inserted exactly the same kv into the memstore successfully and committed the transaction
by syncing to wal successfully. Now thread A tries to rollback its failed transaction and
removes the kv from the memstore. Is this scenario possible? In that case, should the rollback
code in Thread A delete the kv from the memstore only if its kv.memstoreTS matches its own?
                
> The put operation can release the rowlock before sync-ing the Hlog
> ------------------------------------------------------------------
>
>                 Key: HBASE-4528
>                 URL: https://issues.apache.org/jira/browse/HBASE-4528
>             Project: HBase
>          Issue Type: Improvement
>          Components: regionserver
>            Reporter: dhruba borthakur
>            Assignee: dhruba borthakur
>         Attachments: appendNoSyncPut1.txt, appendNoSyncPut2.txt, appendNoSyncPut3.txt,
appendNoSyncPut4.txt
>
>
> This allows for better throughput when there are hot rows. A single row update improves
from 100 puts/sec/server to 5000 puts/sec/server.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message