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

binlijin commented on HBASE-6423:
---------------------------------

{code}
HRegion
  public boolean flushcache() throws IOException {
      lock(lock.readLock());
  }
{code}
HRegion.flushcache can be called by normal flush cache, should we convert it to 
the old style?
                
> Writes should not block reads on blocking updates to memstores
> --------------------------------------------------------------
>
>                 Key: HBASE-6423
>                 URL: https://issues.apache.org/jira/browse/HBASE-6423
>             Project: HBase
>          Issue Type: Bug
>            Reporter: Karthik Ranganathan
>            Assignee: Jimmy Xiang
>             Fix For: 0.96.0, 0.94.4
>
>         Attachments: 0.94-6423.patch, 0.94-6423_v4.patch, 6423.addendum, 
> trunk-6423.patch, trunk-6423_v2.1.patch, trunk-6423_v2.patch, 
> trunk-6423_v3.2.patch, trunk-6423_v3.3.patch, trunk-6423_v3.4.patch, 
> trunk-6423_v4.patch
>
>
> We have a big data use case where we turn off WAL and have a ton of reads and 
> writes. We found that:
> 1. flushing a memstore takes a while (GZIP compression)
> 2. incoming writes cause the new memstore to grow in an unbounded fashion
> 3. this triggers blocking memstore updates
> 4. in turn, this causes all the RPC handler threads to block on writes to 
> that memstore
> 5. we are not able to read during this time as RPC handlers are blocked
> At a higher level, we should not hold up the RPC threads while blocking 
> updates, and we should build in some sort of rate control.

--
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