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

stack commented on HBASE-3483:
------------------------------

+1 on commit.

What changed here? Tab for spaces?

{code}
-  private final Map<HRegion, FlushQueueEntry> regionsInQueue =
-    new HashMap<HRegion, FlushQueueEntry>();
+  private final Map<HRegion, FlushRegionEntry> regionsInQueue =
+    new HashMap<HRegion, FlushRegionEntry>();
+  private AtomicBoolean wakeupPending = new AtomicBoolean();
{code}

> No soft flush trigger on global memstore limit
> ----------------------------------------------
>
>                 Key: HBASE-3483
>                 URL: https://issues.apache.org/jira/browse/HBASE-3483
>             Project: HBase
>          Issue Type: Bug
>          Components: performance, regionserver
>    Affects Versions: 0.90.0
>            Reporter: Todd Lipcon
>            Assignee: Todd Lipcon
>            Priority: Critical
>             Fix For: 0.90.1
>
>         Attachments: hbase-3483.txt, hbase-3483.txt
>
>
> I think this is the reason people see long blocking periods under write load.
> Currently when we hit the global memstore limit, we call 
> reclaimMemStoreMemory() which is synchronized - thus everyone has to wait 
> until the memory has flushed down to the low water mark. This causes every 
> writer to block for 10-15 seconds on a large heap.
> Instead we should start triggering flushes (in another thread) whenever we're 
> above the low water mark. Then only block writers when we're above the high 
> water mark.

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

        

Reply via email to