blob: 0fad3b62601d7dcd85b7abc26800bc0e1d8c74de [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>ChunkCreator.MemStoreChunkPool (Apache HBase 3.0.0-SNAPSHOT API)</title>
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="ChunkCreator.MemStoreChunkPool (Apache HBase 3.0.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ChunkCreator.MemStoreChunkPool.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.StatisticsThread.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html" target="_top">Frames</a></li>
<li><a href="ChunkCreator.MemStoreChunkPool.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.hadoop.hbase.regionserver</div>
<h2 title="Class ChunkCreator.MemStoreChunkPool" class="title">Class ChunkCreator.MemStoreChunkPool</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.regionserver.ChunkCreator.MemStoreChunkPool</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTuneObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">HeapMemoryManager.HeapMemoryTuneObserver</a></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.html" title="class in org.apache.hadoop.hbase.regionserver">ChunkCreator</a></dd>
</dl>
<hr>
<br>
<pre>private class <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.html#line.321">ChunkCreator.MemStoreChunkPool</a>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTuneObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">HeapMemoryManager.HeapMemoryTuneObserver</a></pre>
<div class="block">A pool of <a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver"><code>Chunk</code></a> instances.
MemStoreChunkPool caches a number of retired chunks for reusing, it could
decrease allocating bytes when writing, thereby optimizing the garbage
collection on JVM.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Nested Class Summary table, listing nested classes, and an explanation">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Class and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private class&nbsp;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.StatisticsThread.html" title="class in org.apache.hadoop.hbase.regionserver">ChunkCreator.MemStoreChunkPool.StatisticsThread</a></span></code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#chunkCount">chunkCount</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#chunkSize">chunkSize</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#label">label</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#maxCount">maxCount</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private float</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#poolSizePercentage">poolSizePercentage</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#reclaimedChunks">reclaimedChunks</a></span></code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/LongAdder.html?is-external=true" title="class or interface in java.util.concurrent.atomic">LongAdder</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#reusedChunkCount">reusedChunkCount</a></span></code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ScheduledExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ScheduledExecutorService</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#scheduleThreadPool">scheduleThreadPool</a></span></code>
<div class="block">Statistics thread schedule pool</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private static int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#statThreadPeriod">statThreadPeriod</a></span></code>
<div class="block">Statistics thread</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#MemStoreChunkPool-java.lang.String-int-int-int-float-">MemStoreChunkPool</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;label,
int&nbsp;chunkSize,
int&nbsp;maxCount,
int&nbsp;initialCount,
float&nbsp;poolSizePercentage)</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#getChunk--">getChunk</a></span>()</code>
<div class="block">Poll a chunk from the pool, reset it if not null, else create a new chunk to return if we have
not yet created max allowed chunks count.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>(package private) <a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#getChunk-org.apache.hadoop.hbase.regionserver.CompactingMemStore.IndexType-">getChunk</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver">CompactingMemStore.IndexType</a>&nbsp;chunkIndexType)</code>&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>(package private) int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#getChunkSize--">getChunkSize</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>private int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#getMaxCount--">getMaxCount</a></span>()</code>&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#onHeapMemoryTune-long-long-">onHeapMemoryTune</a></span>(long&nbsp;newMemstoreSize,
long&nbsp;newBlockCacheSize)</code>
<div class="block">This method would be called by HeapMemoryManger when a heap memory tune action took place.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>private void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#putbackChunks-org.apache.hadoop.hbase.regionserver.Chunk-">putbackChunks</a></span>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&nbsp;c)</code>
<div class="block">Add the chunks to the pool, when the pool achieves the max size, it will skip the remaining
chunks</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="chunkSize">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>chunkSize</h4>
<pre>private final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.322">chunkSize</a></pre>
</li>
</ul>
<a name="maxCount">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxCount</h4>
<pre>private&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.323">maxCount</a></pre>
</li>
</ul>
<a name="reclaimedChunks">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reclaimedChunks</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/BlockingQueue.html?is-external=true" title="class or interface in java.util.concurrent">BlockingQueue</a>&lt;<a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&gt; <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.326">reclaimedChunks</a></pre>
</li>
</ul>
<a name="poolSizePercentage">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>poolSizePercentage</h4>
<pre>private final&nbsp;float <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.327">poolSizePercentage</a></pre>
</li>
</ul>
<a name="scheduleThreadPool">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scheduleThreadPool</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/ScheduledExecutorService.html?is-external=true" title="class or interface in java.util.concurrent">ScheduledExecutorService</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.330">scheduleThreadPool</a></pre>
<div class="block">Statistics thread schedule pool</div>
</li>
</ul>
<a name="statThreadPeriod">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>statThreadPeriod</h4>
<pre>private static final&nbsp;int <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.332">statThreadPeriod</a></pre>
<div class="block">Statistics thread</div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.regionserver.ChunkCreator.MemStoreChunkPool.statThreadPeriod">Constant Field Values</a></dd>
</dl>
</li>
</ul>
<a name="chunkCount">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>chunkCount</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/AtomicLong.html?is-external=true" title="class or interface in java.util.concurrent.atomic">AtomicLong</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.333">chunkCount</a></pre>
</li>
</ul>
<a name="reusedChunkCount">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reusedChunkCount</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/concurrent/atomic/LongAdder.html?is-external=true" title="class or interface in java.util.concurrent.atomic">LongAdder</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.334">reusedChunkCount</a></pre>
</li>
</ul>
<a name="label">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>label</h4>
<pre>private final&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> <a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.335">label</a></pre>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="MemStoreChunkPool-java.lang.String-int-int-int-float-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>MemStoreChunkPool</h4>
<pre><a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.337">MemStoreChunkPool</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;label,
int&nbsp;chunkSize,
int&nbsp;maxCount,
int&nbsp;initialCount,
float&nbsp;poolSizePercentage)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="getChunk--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChunk</h4>
<pre><a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.366">getChunk</a>()</pre>
<div class="block">Poll a chunk from the pool, reset it if not null, else create a new chunk to return if we have
not yet created max allowed chunks count. When we have already created max allowed chunks and
no free chunks as of now, return null. It is the responsibility of the caller to make a chunk
then.
Note: Chunks returned by this pool must be put back to the pool after its use.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a chunk</dd>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#putbackChunks-org.apache.hadoop.hbase.regionserver.Chunk-"><code>putbackChunks(Chunk)</code></a></dd>
</dl>
</li>
</ul>
<a name="getChunk-org.apache.hadoop.hbase.regionserver.CompactingMemStore.IndexType-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChunk</h4>
<pre><a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.370">getChunk</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/CompactingMemStore.IndexType.html" title="enum in org.apache.hadoop.hbase.regionserver">CompactingMemStore.IndexType</a>&nbsp;chunkIndexType)</pre>
</li>
</ul>
<a name="getChunkSize--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getChunkSize</h4>
<pre>int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.392">getChunkSize</a>()</pre>
</li>
</ul>
<a name="putbackChunks-org.apache.hadoop.hbase.regionserver.Chunk-">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>putbackChunks</h4>
<pre>private&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.401">putbackChunks</a>(<a href="../../../../../org/apache/hadoop/hbase/regionserver/Chunk.html" title="class in org.apache.hadoop.hbase.regionserver">Chunk</a>&nbsp;c)</pre>
<div class="block">Add the chunks to the pool, when the pool achieves the max size, it will skip the remaining
chunks</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - </dd>
</dl>
</li>
</ul>
<a name="getMaxCount--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxCount</h4>
<pre>private&nbsp;int&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.435">getMaxCount</a>()</pre>
</li>
</ul>
<a name="onHeapMemoryTune-long-long-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>onHeapMemoryTune</h4>
<pre>public&nbsp;void&nbsp;<a href="../../../../../src-html/org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html#line.440">onHeapMemoryTune</a>(long&nbsp;newMemstoreSize,
long&nbsp;newBlockCacheSize)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTuneObserver.html#onHeapMemoryTune-long-long-">HeapMemoryManager.HeapMemoryTuneObserver</a></code></span></div>
<div class="block">This method would be called by HeapMemoryManger when a heap memory tune action took place.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTuneObserver.html#onHeapMemoryTune-long-long-">onHeapMemoryTune</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../org/apache/hadoop/hbase/regionserver/HeapMemoryManager.HeapMemoryTuneObserver.html" title="interface in org.apache.hadoop.hbase.regionserver">HeapMemoryManager.HeapMemoryTuneObserver</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>newMemstoreSize</code> - The newly calculated global memstore size</dd>
<dd><code>newBlockCacheSize</code> - The newly calculated global blockcache size</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/ChunkCreator.MemStoreChunkPool.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.ChunkType.html" title="enum in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.StatisticsThread.html" title="class in org.apache.hadoop.hbase.regionserver"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../index.html?org/apache/hadoop/hbase/regionserver/ChunkCreator.MemStoreChunkPool.html" target="_top">Frames</a></li>
<li><a href="ChunkCreator.MemStoreChunkPool.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright &#169; 2007&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>