[
https://issues.apache.org/jira/browse/HBASE-3455?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12989524#comment-12989524
]
stack commented on HBASE-3455:
------------------------------
+1
Minors below:
On commit, I wonder if you should commit w/ it disabled on branch but enabled
on trunk?
In here:
{code}
+ // Use the internalAdd method here since we (a) already have a lock
+ // and (b) cannot safely use the MSLAB here.
+ // See TestMemStore.DISABLED_testUpsertMSLAB
{code}
... its not safe because it would bloat memory? Or is it some thread 'safety'
issue? Maybe clarify on commit?
Should this class even be public?
+public class MemStoreLAB {
Why this?
{code}
+ if (size > maxAlloc) {
+ return new Allocation(new byte[size], 0);
+ }
{code}
On return we'll clone when we don't need to? Return null as flag that we're
not to clone? (Caller is maybeCloneWithAllocator).
We should open new issue for fixing upsert?
> Heap fragmentation in region server
> -----------------------------------
>
> Key: HBASE-3455
> URL: https://issues.apache.org/jira/browse/HBASE-3455
> Project: HBase
> Issue Type: Brainstorming
> Components: performance, regionserver
> Affects Versions: 0.90.1
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Priority: Critical
> Fix For: 0.90.1
>
> Attachments: HBasefragmentation.pdf, collapse-arrays.patch,
> icv-frag.png, mslab-1.txt, mslab-2.txt, mslab-3.txt, mslab-4.txt,
> mslab-5.txt, parse-fls-statistics.py, with-kvallocs.png
>
>
> Stop-the-world GC pauses have long been a problem in HBase. "Concurrent mode
> failures" can usually be tuned around by setting the initiating occupancy
> fraction low, but eventually the heap becomes fragmented and a promotion
> failure occurs.
> This JIRA is to do research/experiments about the heap fragmentation issue
> and possible solutions.
--
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira