blob: 0e126992572106f1f6c130aae20d1932229cea74 [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>ExclusiveMemHFileBlock (Apache HBase 3.0.0-alpha-2-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="ExclusiveMemHFileBlock (Apache HBase 3.0.0-alpha-2-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":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/ExclusiveMemHFileBlock.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/io/hfile/CorruptHFileException.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/FirstLevelBlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" target="_top">Frames</a></li>
<li><a href="ExclusiveMemHFileBlock.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.classes.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">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>Field&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.io.hfile</div>
<h2 title="Class ExclusiveMemHFileBlock" class="title">Class ExclusiveMemHFileBlock</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><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">org.apache.hadoop.hbase.io.hfile.HFileBlock</a></li>
<li>
<ul class="inheritance">
<li>org.apache.hadoop.hbase.io.hfile.ExclusiveMemHFileBlock</li>
</ul>
</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/io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>, <a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html" title="interface in org.apache.hadoop.hbase.nio">HBaseReferenceCounted</a>, org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</dd>
</dl>
<hr>
<br>
<pre>@InterfaceAudience.Private
public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.37">ExclusiveMemHFileBlock</a>
extends <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></pre>
<div class="block">The <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io"><code>ByteBuffAllocator</code></a> won't allocate pooled heap <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio"><code>ByteBuff</code></a> now; at the same time,
if allocate an off-heap <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio"><code>ByteBuff</code></a> from allocator, then it must be a pooled one. That's to
say, an exclusive memory HFileBlock would must be an heap block and a shared memory HFileBlock
would must be an off-heap block.
<p>
The exclusive memory HFileBlock will do nothing when calling retain or release methods, because
its memory will be garbage collected by JVM, even if its reference count decrease to zero, we can
do nothing for the de-allocating.
<p></div>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/SharedMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>SharedMemHFileBlock</code></a></dd>
</dl>
</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>
<ul class="blockList">
<li class="blockList"><a name="nested.classes.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">
<!-- -->
</a>
<h3>Nested classes/interfaces inherited from class&nbsp;org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockDeserializer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockDeserializer</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockIterator.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockIterator</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockWritable.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockWritable</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReaderImpl</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Header.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Header</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Writer</a></code></li>
</ul>
</li>
</ul>
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#BLOCK_DESERIALIZER">BLOCK_DESERIALIZER</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#BLOCK_METADATA_SPACE">BLOCK_METADATA_SPACE</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#CHECKSUM_SIZE">CHECKSUM_SIZE</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD">CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#DONT_FILL_HEADER">DONT_FILL_HEADER</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#DUMMY_HEADER_NO_CHECKSUM">DUMMY_HEADER_NO_CHECKSUM</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#FILL_HEADER">FILL_HEADER</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#FIXED_OVERHEAD">FIXED_OVERHEAD</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#MULTI_BYTE_BUFFER_HEAP_SIZE">MULTI_BYTE_BUFFER_HEAP_SIZE</a></code></li>
</ul>
</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/io/hfile/ExclusiveMemHFileBlock.html#ExclusiveMemHFileBlock-org.apache.hadoop.hbase.io.hfile.BlockType-int-int-long-org.apache.hadoop.hbase.nio.ByteBuff-boolean-long-int-int-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.ByteBuffAllocator-">ExclusiveMemHFileBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType,
int&nbsp;onDiskSizeWithoutHeader,
int&nbsp;uncompressedSizeWithoutHeader,
long&nbsp;prevBlockOffset,
<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
boolean&nbsp;fillHeader,
long&nbsp;offset,
int&nbsp;nextBlockOnDiskSize,
int&nbsp;onDiskDataSizeWithHeader,
<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;fileContext,
<a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a>&nbsp;alloc)</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>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#isSharedMem--">isSharedMem</a></span>()</code>
<div class="block">Will be override by <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/SharedMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>SharedMemHFileBlock</code></a> or <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>ExclusiveMemHFileBlock</code></a>.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#refCnt--">refCnt</a></span>()</code>
<div class="block">Reference count of this Cacheable.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#release--">release</a></span>()</code>
<div class="block">Call <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#release--"><code>ByteBuff.release()</code></a> to decrease the reference count, if no other reference, it will
return back the <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio"><code>ByteBuffer</code></a> to <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io"><code>ByteBuffAllocator</code></a></div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">ExclusiveMemHFileBlock</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#retain--">retain</a></span>()</code>
<div class="block">Increase its reference count, and only when no reference we can free the object's memory.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.hadoop.hbase.io.hfile.<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#createFromBuff-org.apache.hadoop.hbase.nio.ByteBuff-boolean-long-int-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.ByteBuffAllocator-">createFromBuff</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#deepCloneOnHeap-org.apache.hadoop.hbase.io.hfile.HFileBlock-">deepCloneOnHeap</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#equals-java.lang.Object-">equals</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBlockType--">getBlockType</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferReadOnly--">getBufferReadOnly</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferWithoutHeader--">getBufferWithoutHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferWithoutHeader-boolean-">getBufferWithoutHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getByteBuffAllocator--">getByteBuffAllocator</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBytesPerChecksum--">getBytesPerChecksum</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getByteStream--">getByteStream</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getChecksumType--">getChecksumType</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncoding--">getDataBlockEncoding</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncodingId--">getDataBlockEncodingId</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDummyHeaderForVersion--">getDummyHeaderForVersion</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getHFileContext--">getHFileContext</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getMetaData--">getMetaData</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getNextBlockOnDiskSize--">getNextBlockOnDiskSize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOffset--">getOffset</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskDataSizeWithHeader--">getOnDiskDataSizeWithHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskSizeWithHeader--">getOnDiskSizeWithHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskSizeWithoutHeader--">getOnDiskSizeWithoutHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getPrevBlockOffset--">getPrevBlockOffset</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getSerializedLength--">getSerializedLength</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getUncompressedSizeWithoutHeader--">getUncompressedSizeWithoutHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#hashCode--">hashCode</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#headerSize--">headerSize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#headerSize-boolean-">headerSize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#heapSize--">heapSize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#isUnpacked--">isUnpacked</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheck--">sanityCheck</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheckUncompressed--">sanityCheckUncompressed</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#serialize-java.nio.ByteBuffer-boolean-">serialize</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#shallowClone-org.apache.hadoop.hbase.io.hfile.HFileBlock-">shallowClone</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#toString--">toString</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#toStringHeader-org.apache.hadoop.hbase.nio.ByteBuff-">toStringHeader</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#totalChecksumBytes--">totalChecksumBytes</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#unpack-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.hfile.HFileBlock.FSReader-">unpack</a></code></li>
</ul>
<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#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#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#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>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.hadoop.hbase.nio.HBaseReferenceCounted">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.hadoop.hbase.nio.<a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html" title="interface in org.apache.hadoop.hbase.nio">HBaseReferenceCounted</a></h3>
<code><a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#release-int-">release</a>, <a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#retain-int-">retain</a>, <a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#touch--">touch</a>, <a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#touch-java.lang.Object-">touch</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="ExclusiveMemHFileBlock-org.apache.hadoop.hbase.io.hfile.BlockType-int-int-long-org.apache.hadoop.hbase.nio.ByteBuff-boolean-long-int-int-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.ByteBuffAllocator-">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>ExclusiveMemHFileBlock</h4>
<pre><a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.39">ExclusiveMemHFileBlock</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a>&nbsp;blockType,
int&nbsp;onDiskSizeWithoutHeader,
int&nbsp;uncompressedSizeWithoutHeader,
long&nbsp;prevBlockOffset,
<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a>&nbsp;buf,
boolean&nbsp;fillHeader,
long&nbsp;offset,
int&nbsp;nextBlockOnDiskSize,
int&nbsp;onDiskDataSizeWithHeader,
<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a>&nbsp;fileContext,
<a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a>&nbsp;alloc)</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="refCnt--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>refCnt</h4>
<pre>public&nbsp;int&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.48">refCnt</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#refCnt--">Cacheable</a></code></span></div>
<div class="block">Reference count of this Cacheable.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#refCnt--">refCnt</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>refCnt</code>&nbsp;in interface&nbsp;<code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#refCnt--">refCnt</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></dd>
</dl>
</li>
</ul>
<a name="retain--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>retain</h4>
<pre>public&nbsp;<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">ExclusiveMemHFileBlock</a>&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.53">retain</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#retain--">Cacheable</a></code></span></div>
<div class="block">Increase its reference count, and only when no reference we can free the object's memory.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#retain--">retain</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>retain</code>&nbsp;in interface&nbsp;<code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#retain--">retain</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></dd>
</dl>
</li>
</ul>
<a name="release--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>release</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.59">release</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#release--">HFileBlock</a></code></span></div>
<div class="block">Call <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html#release--"><code>ByteBuff.release()</code></a> to decrease the reference count, if no other reference, it will
return back the <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio"><code>ByteBuffer</code></a> to <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io"><code>ByteBuffAllocator</code></a></div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#release--">release</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code>release</code>&nbsp;in interface&nbsp;<code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#release--">release</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></dd>
</dl>
</li>
</ul>
<a name="isSharedMem--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isSharedMem</h4>
<pre>public&nbsp;boolean&nbsp;<a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html#line.65">isSharedMem</a>()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from class:&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#isSharedMem--">HFileBlock</a></code></span></div>
<div class="block">Will be override by <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/SharedMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>SharedMemHFileBlock</code></a> or <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>ExclusiveMemHFileBlock</code></a>. Return true
by default.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#isSharedMem--">isSharedMem</a></code>&nbsp;in class&nbsp;<code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></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/ExclusiveMemHFileBlock.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/io/hfile/CorruptHFileException.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/FirstLevelBlockCache.html" title="interface in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" target="_top">Frames</a></li>
<li><a href="ExclusiveMemHFileBlock.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.classes.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">Nested</a>&nbsp;|&nbsp;</li>
<li><a href="#fields.inherited.from.class.org.apache.hadoop.hbase.io.hfile.HFileBlock">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>Field&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;2021 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</body>
</html>