| <!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>HFileBlock (Apache HBase 4.0.0-alpha-1-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="HFileBlock (Apache HBase 4.0.0-alpha-1-SNAPSHOT API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":10,"i1":10,"i2":10,"i3":9,"i4":9,"i5":9,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":9,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":9,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":9,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10,"i39":10,"i40":10,"i41":10,"i42":10,"i43":10,"i44":10,"i45":9,"i46":10,"i47":9,"i48":10,"i49":10,"i50":10,"i51":10}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static 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/HFileBlock.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/HFile.WriterFactory.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockDeserializer.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/HFileBlock.html" target="_top">Frames</a></li> |
| <li><a href="HFileBlock.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../../../allclasses-noframe.html">All 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: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </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 HFileBlock" class="title">Class HFileBlock</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.io.hfile.HFileBlock</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> |
| <dl> |
| <dt>Direct Known Subclasses:</dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">ExclusiveMemHFileBlock</a>, <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/SharedMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">SharedMemHFileBlock</a></dd> |
| </dl> |
| <hr> |
| <br> |
| <pre>@InterfaceAudience.Private |
| public class <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.123">HFileBlock</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/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></pre> |
| <div class="block">Cacheable Blocks of an <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFile</code></a> version 2 file. Version 2 was introduced in hbase-0.92.0. |
| <p> |
| Version 1 was the original file block. Version 2 was introduced when we changed the hbase file |
| format to support multi-level block indexes and compound bloom filters (HBASE-3857). Support for |
| Version 1 was removed in hbase-1.3.0. |
| <h3>HFileBlock: Version 2</h3> In version 2, a block is structured as follows: |
| <ul> |
| <li><b>Header:</b> See Writer#putHeader() for where header is written; header total size is |
| HFILEBLOCK_HEADER_SIZE |
| <ul> |
| <li>0. blockType: Magic record identifying the <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><code>BlockType</code></a> (8 bytes): e.g. |
| <code>DATABLK*</code> |
| <li>1. onDiskSizeWithoutHeader: Compressed -- a.k.a 'on disk' -- block size, excluding header, |
| but including tailing checksum bytes (4 bytes) |
| <li>2. uncompressedSizeWithoutHeader: Uncompressed block size, excluding header, and excluding |
| checksum bytes (4 bytes) |
| <li>3. prevBlockOffset: The offset of the previous block of the same type (8 bytes). This is used |
| to navigate to the previous block without having to go to the block index |
| <li>4: For minorVersions >=1, the ordinal describing checksum type (1 byte) |
| <li>5: For minorVersions >=1, the number of data bytes/checksum chunk (4 bytes) |
| <li>6: onDiskDataSizeWithHeader: For minorVersions >=1, the size of data 'on disk', including |
| header, excluding checksums (4 bytes) |
| </ul> |
| </li> |
| <li><b>Raw/Compressed/Encrypted/Encoded data:</b> The compression algorithm is the same for all |
| the blocks in an <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFile</code></a>. If compression is NONE, this is just raw, serialized Cells. |
| <li><b>Tail:</b> For minorVersions >=1, a series of 4 byte checksums, one each for the number |
| of bytes specified by bytesPerChecksum. |
| </ul> |
| <h3>Caching</h3> Caches cache whole blocks with trailing checksums if any. We then tag on some |
| metadata, the content of BLOCK_METADATA_SPACE which will be flag on if we are doing 'hbase' |
| checksums and then the offset into the file which is needed when we re-make a cache key when we |
| return the block to the cache as 'done'. See <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#serialize-java.nio.ByteBuffer-boolean-"><code>Cacheable.serialize(ByteBuffer, boolean)</code></a> and |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--"><code>Cacheable.getDeserializer()</code></a>. |
| <p> |
| TODO: Should we cache the checksums? Down in Writer#getBlockForCaching(CacheConfig) where we make |
| a block to cache-on-write, there is an attempt at turning off checksums. This is not the only |
| place we get blocks to cache. We also will cache the raw return from an hdfs read. In this case, |
| the checksums may be present. If the cache is backed by something that doesn't do ECC, say an |
| SSD, we might want to preserve checksums. For now this is open question. |
| <p> |
| TODO: Over in BucketCache, we save a block allocation by doing a custom serialization. Be sure to |
| change it if serialization changes in here. Could we add a method here that takes an IOEngine and |
| that then serializes to it rather than expose our internals over in BucketCache? IOEngine is in |
| the bucket subpackage. Pull it up? Then this class knows about bucketcache. Ugh.</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"> </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>static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockDeserializer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockDeserializer</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static interface </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockIterator.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockIterator</a></span></code> |
| <div class="block">Iterator for reading <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFileBlock</code></a>s in load-on-open-section, such as root data index |
| block, meta index block, file info block etc.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>(package private) static interface </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockWritable.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.BlockWritable</a></span></code> |
| <div class="block">Something that can be written into a block.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static interface </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReader</a></span></code> |
| <div class="block">An HFile block reader with iteration ability.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>(package private) static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReaderImpl.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReaderImpl</a></span></code> |
| <div class="block">Reads version 2 HFile blocks from the filesystem.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Header.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Header</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.PrefetchedHeader.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.PrefetchedHeader</a></span></code> |
| <div class="block">Data-structure to use caching the header of the NEXT block.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static class </code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock.Writer</a></span></code> |
| <div class="block">Unified version 2 <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFile</code></a> block writer.</div> |
| </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"> </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="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#allocator">allocator</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a><<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#BLOCK_DESERIALIZER">BLOCK_DESERIALIZER</a></span></code> |
| <div class="block">Used deserializing blocks from Cache.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#BLOCK_METADATA_SPACE">BLOCK_METADATA_SPACE</a></span></code> |
| <div class="block">Space for metadata on a block that gets stored along with the block when we cache it.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#blockType">blockType</a></span></code> |
| <div class="block">Type of block.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#bufWithoutChecksum">bufWithoutChecksum</a></span></code> |
| <div class="block">The in-memory representation of the hfile block.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#CHECKSUM_SIZE">CHECKSUM_SIZE</a></span></code> |
| <div class="block">Each checksum value is an integer that can be stored in 4 bytes.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>(package private) static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD">CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD</a></span></code> |
| <div class="block">On a checksum failure, do these many succeeding read requests using hdfs checksums before |
| auto-reenabling hbase checksum verification.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>private static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#DESERIALIZER_IDENTIFIER">DESERIALIZER_IDENTIFIER</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#DONT_FILL_HEADER">DONT_FILL_HEADER</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>(package private) static byte[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#DUMMY_HEADER_NO_CHECKSUM">DUMMY_HEADER_NO_CHECKSUM</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#fileContext">fileContext</a></span></code> |
| <div class="block">Meta data that holds meta information on the hfileblock.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>static boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#FILL_HEADER">FILL_HEADER</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#FIXED_OVERHEAD">FIXED_OVERHEAD</a></span></code> </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>private static org.slf4j.Logger</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#LOG">LOG</a></span></code> </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#MULTI_BYTE_BUFFER_HEAP_SIZE">MULTI_BYTE_BUFFER_HEAP_SIZE</a></span></code> </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/io/hfile/HFileBlock.html#nextBlockOnDiskSize">nextBlockOnDiskSize</a></span></code> |
| <div class="block">The on-disk size of the next block, including the header and checksums if present.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#offset">offset</a></span></code> |
| <div class="block">The offset of this block in the file.</div> |
| </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/io/hfile/HFileBlock.html#onDiskDataSizeWithHeader">onDiskDataSizeWithHeader</a></span></code> |
| <div class="block">Size on disk of header + data.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#onDiskSizeWithoutHeader">onDiskSizeWithoutHeader</a></span></code> |
| <div class="block">Size on disk excluding header, including checksum.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code>private long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#prevBlockOffset">prevBlockOffset</a></span></code> |
| <div class="block">The offset of the previous block on disk.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>private int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#totalChecksumBytes">totalChecksumBytes</a></span></code> </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/io/hfile/HFileBlock.html#uncompressedSizeWithoutHeader">uncompressedSizeWithoutHeader</a></span></code> |
| <div class="block">Size of pure data.</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/io/hfile/HFileBlock.html#UNSET">UNSET</a></span></code> </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"> </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/HFileBlock.html#HFileBlock-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-">HFileBlock</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> blockType, |
| int onDiskSizeWithoutHeader, |
| int uncompressedSizeWithoutHeader, |
| long prevBlockOffset, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf, |
| boolean fillHeader, |
| long offset, |
| int nextBlockOnDiskSize, |
| int onDiskDataSizeWithHeader, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> allocator)</code> |
| <div class="block">Creates a new <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFile</code></a> block from the given fields.</div> |
| </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"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </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>private <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#addMetaData-java.nio.ByteBuffer-boolean-">addMetaData</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> destination, |
| boolean includeNextBlockMetadata)</code> |
| <div class="block">Adds metadata at current position (position is moved forward).</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#allocateBufferForUnpacking--">allocateBufferForUnpacking</a></span>()</code> |
| <div class="block">Always allocates a new buffer of the correct size.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>private int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#computeTotalChecksumBytes--">computeTotalChecksumBytes</a></span>()</code> </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockBuilder.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlockBuilder</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#createBuilder-org.apache.hadoop.hbase.io.hfile.HFileBlock-org.apache.hadoop.hbase.nio.ByteBuff-">createBuilder</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> newBuff)</code> |
| <div class="block">Creates a new HFileBlockBuilder from the existing block and a new ByteBuff.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>(package private) static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><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></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf, |
| boolean usesHBaseChecksum, |
| long offset, |
| int nextBlockOnDiskSize, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> allocator)</code> |
| <div class="block">Creates a block from an existing buffer starting with a header.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>(package private) static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#deepCloneOnHeap-org.apache.hadoop.hbase.io.hfile.HFileBlock-">deepCloneOnHeap</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk)</code> </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#equals-java.lang.Object-">equals</a></span>(<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> comparison)</code> </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBlockType--">getBlockType</a></span>()</code> |
| <div class="block">Returns the block type of this cached HFile block</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferReadOnly--">getBufferReadOnly</a></span>()</code> |
| <div class="block">Returns a read-only duplicate of the buffer this block stores internally ready to be read.</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferWithoutHeader--">getBufferWithoutHeader</a></span>()</code> |
| <div class="block">Returns a buffer that does not include the header and checksum.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getByteBuffAllocator--">getByteBuffAllocator</a></span>()</code> </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code>(package private) int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBytesPerChecksum--">getBytesPerChecksum</a></span>()</code> </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>(package private) <a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getByteStream--">getByteStream</a></span>()</code> |
| <div class="block">Returns a byte stream reading the data(excluding header and checksum) of this block</div> |
| </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>(package private) byte</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getChecksumType--">getChecksumType</a></span>()</code> </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncoding--">getDataBlockEncoding</a></span>()</code> </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>(package private) short</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDataBlockEncodingId--">getDataBlockEncodingId</a></span>()</code> |
| <div class="block">Returns get data block encoding id that was used to encode this block</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a><<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDeserializer--">getDeserializer</a></span>()</code> |
| <div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>(package private) byte[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDummyHeaderForVersion--">getDummyHeaderForVersion</a></span>()</code> |
| <div class="block">Return the appropriate DUMMY_HEADER for the minor version</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>private static byte[]</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getDummyHeaderForVersion-boolean-">getDummyHeaderForVersion</a></span>(boolean usesHBaseChecksum)</code> |
| <div class="block">Return the appropriate DUMMY_HEADER for the minor version</div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getHFileContext--">getHFileContext</a></span>()</code> </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getMetaData-java.nio.ByteBuffer-">getMetaData</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> bb)</code> |
| <div class="block">For use by bucketcache.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>(package private) int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getNextBlockOnDiskSize--">getNextBlockOnDiskSize</a></span>()</code> </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>(package private) long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOffset--">getOffset</a></span>()</code> |
| <div class="block">Cannot be <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#UNSET"><code>UNSET</code></a>.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>(package private) int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskDataSizeWithHeader--">getOnDiskDataSizeWithHeader</a></span>()</code> |
| <div class="block">Returns the size of data on disk + header.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskSizeWithHeader--">getOnDiskSizeWithHeader</a></span>()</code> |
| <div class="block">Returns the on-disk size of header + data part + checksum.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>private static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskSizeWithHeader-org.apache.hadoop.hbase.nio.ByteBuff-boolean-">getOnDiskSizeWithHeader</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> headerBuf, |
| boolean checksumSupport)</code> |
| <div class="block">Parse total on disk size including header and checksum.</div> |
| </td> |
| </tr> |
| <tr id="i26" class="altColor"> |
| <td class="colFirst"><code>(package private) int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getOnDiskSizeWithoutHeader--">getOnDiskSizeWithoutHeader</a></span>()</code> |
| <div class="block">Returns the on-disk size of the data part + checksum (header excluded).</div> |
| </td> |
| </tr> |
| <tr id="i27" class="rowColor"> |
| <td class="colFirst"><code>(package private) long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getPrevBlockOffset--">getPrevBlockOffset</a></span>()</code> |
| <div class="block">Returns the offset of the previous block of the same type in the file, or -1 if unknown</div> |
| </td> |
| </tr> |
| <tr id="i28" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getSerializedLength--">getSerializedLength</a></span>()</code> |
| <div class="block">Returns the length of the ByteBuffer required to serialized the object.</div> |
| </td> |
| </tr> |
| <tr id="i29" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getUncompressedSizeWithoutHeader--">getUncompressedSizeWithoutHeader</a></span>()</code> |
| <div class="block">Returns the uncompressed size of data part (header and checksum excluded).</div> |
| </td> |
| </tr> |
| <tr id="i30" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#hashCode--">hashCode</a></span>()</code> </td> |
| </tr> |
| <tr id="i31" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#headerSize--">headerSize</a></span>()</code> |
| <div class="block">Returns the size of this block header.</div> |
| </td> |
| </tr> |
| <tr id="i32" class="altColor"> |
| <td class="colFirst"><code>static int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#headerSize-boolean-">headerSize</a></span>(boolean usesHBaseChecksum)</code> |
| <div class="block">Maps a minor version to the size of the header.</div> |
| </td> |
| </tr> |
| <tr id="i33" class="rowColor"> |
| <td class="colFirst"><code>long</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#heapSize--">heapSize</a></span>()</code> |
| <div class="block">Return the approximate 'exclusive deep size' of implementing object.</div> |
| </td> |
| </tr> |
| <tr id="i34" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.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="i35" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#isUnpacked--">isUnpacked</a></span>()</code> |
| <div class="block">Return true when this block's buffer has been unpacked, false otherwise.</div> |
| </td> |
| </tr> |
| <tr id="i36" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#overwriteHeader--">overwriteHeader</a></span>()</code> |
| <div class="block">Rewinds <code>buf</code> and writes first 4 header fields.</div> |
| </td> |
| </tr> |
| <tr id="i37" class="rowColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#refCnt--">refCnt</a></span>()</code> |
| <div class="block">Reference count of this Cacheable.</div> |
| </td> |
| </tr> |
| <tr id="i38" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.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="i39" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.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> |
| <tr id="i40" class="altColor"> |
| <td class="colFirst"><code>(package private) void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheck--">sanityCheck</a></span>()</code> |
| <div class="block">Checks if the block is internally consistent, i.e.</div> |
| </td> |
| </tr> |
| <tr id="i41" class="rowColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheckAssertion-org.apache.hadoop.hbase.io.hfile.BlockType-org.apache.hadoop.hbase.io.hfile.BlockType-">sanityCheckAssertion</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> valueFromBuf, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> valueFromField)</code> </td> |
| </tr> |
| <tr id="i42" class="altColor"> |
| <td class="colFirst"><code>private void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheckAssertion-long-long-java.lang.String-">sanityCheckAssertion</a></span>(long valueFromBuf, |
| long valueFromField, |
| <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> fieldName)</code> </td> |
| </tr> |
| <tr id="i43" class="rowColor"> |
| <td class="colFirst"><code>(package private) void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#sanityCheckUncompressed--">sanityCheckUncompressed</a></span>()</code> |
| <div class="block">An additional sanity-check in case no compression or encryption is being used.</div> |
| </td> |
| </tr> |
| <tr id="i44" class="altColor"> |
| <td class="colFirst"><code>void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#serialize-java.nio.ByteBuffer-boolean-">serialize</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> destination, |
| boolean includeNextBlockMetadata)</code> |
| <div class="block">Serializes its data into destination.</div> |
| </td> |
| </tr> |
| <tr id="i45" class="rowColor"> |
| <td class="colFirst"><code>private static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#shallowClone-org.apache.hadoop.hbase.io.hfile.HFileBlock-org.apache.hadoop.hbase.nio.ByteBuff-">shallowClone</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> newBuf)</code> </td> |
| </tr> |
| <tr id="i46" class="altColor"> |
| <td class="colFirst"><code><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/io/hfile/HFileBlock.html#toString--">toString</a></span>()</code> </td> |
| </tr> |
| <tr id="i47" class="rowColor"> |
| <td class="colFirst"><code>(package private) static <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/io/hfile/HFileBlock.html#toStringHeader-org.apache.hadoop.hbase.nio.ByteBuff-">toStringHeader</a></span>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf)</code> |
| <div class="block">Convert the contents of the block header into a human readable string.</div> |
| </td> |
| </tr> |
| <tr id="i48" class="altColor"> |
| <td class="colFirst"><code>(package private) int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#totalChecksumBytes--">totalChecksumBytes</a></span>()</code> |
| <div class="block">Return the number of bytes required to store all the checksums for this block.</div> |
| </td> |
| </tr> |
| <tr id="i49" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#touch--">touch</a></span>()</code> |
| <div class="block">Calling this method in strategic locations where HFileBlocks are referenced may help diagnose |
| potential buffer leaks.</div> |
| </td> |
| </tr> |
| <tr id="i50" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#touch-java.lang.Object-">touch</a></span>(<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> hint)</code> </td> |
| </tr> |
| <tr id="i51" class="rowColor"> |
| <td class="colFirst"><code>(package private) <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><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></span>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReader</a> reader)</code> |
| <div class="block">Retrieves the decompressed/decrypted view of this block.</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 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 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></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="LOG"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>LOG</h4> |
| <pre>private static final org.slf4j.Logger <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.124">LOG</a></pre> |
| </li> |
| </ul> |
| <a name="FIXED_OVERHEAD"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>FIXED_OVERHEAD</h4> |
| <pre>public static final long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.125">FIXED_OVERHEAD</a></pre> |
| </li> |
| </ul> |
| <a name="blockType"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>blockType</h4> |
| <pre>private <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.150">blockType</a></pre> |
| <div class="block">Type of block. Header field 0.</div> |
| </li> |
| </ul> |
| <a name="onDiskSizeWithoutHeader"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>onDiskSizeWithoutHeader</h4> |
| <pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.156">onDiskSizeWithoutHeader</a></pre> |
| <div class="block">Size on disk excluding header, including checksum. Header field 1.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#putHeader-byte:A-int-int-int-int-"><code>HFileBlock.Writer.putHeader(byte[], int, int, int, int)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="uncompressedSizeWithoutHeader"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>uncompressedSizeWithoutHeader</h4> |
| <pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.162">uncompressedSizeWithoutHeader</a></pre> |
| <div class="block">Size of pure data. Does not include header or checksums. Header field 2.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#putHeader-byte:A-int-int-int-int-"><code>HFileBlock.Writer.putHeader(byte[], int, int, int, int)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="prevBlockOffset"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>prevBlockOffset</h4> |
| <pre>private long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.168">prevBlockOffset</a></pre> |
| <div class="block">The offset of the previous block on disk. Header field 3.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#putHeader-byte:A-int-int-int-int-"><code>HFileBlock.Writer.putHeader(byte[], int, int, int, int)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="onDiskDataSizeWithHeader"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>onDiskDataSizeWithHeader</h4> |
| <pre>private final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.175">onDiskDataSizeWithHeader</a></pre> |
| <div class="block">Size on disk of header + data. Excludes checksum. Header field 6, OR calculated from |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#onDiskSizeWithoutHeader"><code>onDiskSizeWithoutHeader</code></a> when using HDFS checksum.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.Writer.html#putHeader-byte:A-int-int-int-int-"><code>HFileBlock.Writer.putHeader(byte[], int, int, int, int)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="bufWithoutChecksum"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>bufWithoutChecksum</h4> |
| <pre>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.194">bufWithoutChecksum</a></pre> |
| <div class="block">The in-memory representation of the hfile block. Can be on or offheap. Can be backed by a |
| single ByteBuffer or by many. Make no assumptions. |
| <p> |
| Be careful reading from this <code>buf</code>. Duplicate and work on the duplicate or if not, |
| be sure to reset position and limit else trouble down the road. |
| <p> |
| TODO: Make this read-only once made. |
| <p> |
| We are using the ByteBuff type. ByteBuffer is not extensible yet we need to be able to have a |
| ByteBuffer-like API across multiple ByteBuffers reading from a cache such as BucketCache. So, |
| we have this ByteBuff type. Unfortunately, it is spread all about HFileBlock. Would be good if |
| could be confined to cache-use only but hard-to-do. |
| <p> |
| NOTE: this byteBuff including HFileBlock header and data, but excluding checksum.</div> |
| </li> |
| </ul> |
| <a name="fileContext"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>fileContext</h4> |
| <pre>private final <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.199">fileContext</a></pre> |
| <div class="block">Meta data that holds meta information on the hfileblock.</div> |
| </li> |
| </ul> |
| <a name="offset"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>offset</h4> |
| <pre>private long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.205">offset</a></pre> |
| <div class="block">The offset of this block in the file. Populated by the reader for convenience of access. This |
| offset is not part of the block header.</div> |
| </li> |
| </ul> |
| <a name="nextBlockOnDiskSize"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>nextBlockOnDiskSize</h4> |
| <pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.215">nextBlockOnDiskSize</a></pre> |
| <div class="block">The on-disk size of the next block, including the header and checksums if present. UNSET if |
| unknown. Blocks try to carry the size of the next block to read in this data member. Usually we |
| get block sizes from the hfile index but sometimes the index is not available: e.g. when we |
| read the indexes themselves (indexes are stored in blocks, we do not have an index for the |
| indexes). Saves seeks especially around file open when there is a flurry of reading in hfile |
| metadata.</div> |
| </li> |
| </ul> |
| <a name="allocator"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>allocator</h4> |
| <pre>private <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.217">allocator</a></pre> |
| </li> |
| </ul> |
| <a name="CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD</h4> |
| <pre>static final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.223">CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD</a></pre> |
| <div class="block">On a checksum failure, do these many succeeding read requests using hdfs checksums before |
| auto-reenabling hbase checksum verification.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.io.hfile.HFileBlock.CHECKSUM_VERIFICATION_NUM_IO_THRESHOLD">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="UNSET"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>UNSET</h4> |
| <pre>private static int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.225">UNSET</a></pre> |
| </li> |
| </ul> |
| <a name="FILL_HEADER"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>FILL_HEADER</h4> |
| <pre>public static final boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.226">FILL_HEADER</a></pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.io.hfile.HFileBlock.FILL_HEADER">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="DONT_FILL_HEADER"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>DONT_FILL_HEADER</h4> |
| <pre>public static final boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.227">DONT_FILL_HEADER</a></pre> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.io.hfile.HFileBlock.DONT_FILL_HEADER">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="MULTI_BYTE_BUFFER_HEAP_SIZE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>MULTI_BYTE_BUFFER_HEAP_SIZE</h4> |
| <pre>public static final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.230">MULTI_BYTE_BUFFER_HEAP_SIZE</a></pre> |
| </li> |
| </ul> |
| <a name="BLOCK_METADATA_SPACE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>BLOCK_METADATA_SPACE</h4> |
| <pre>public static final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.244">BLOCK_METADATA_SPACE</a></pre> |
| <div class="block">Space for metadata on a block that gets stored along with the block when we cache it. There are |
| a few bytes stuck on the end of the HFileBlock that we pull in from HDFS. 8 bytes are for the |
| offset of this block (long) in the file. Offset is important because is is used when we remake |
| the CacheKey when we return block to the cache when done. There is also a flag on whether |
| checksumming is being done by hbase or not. See class comment for note on uncertain state of |
| checksumming of blocks that come out of cache (should we or should we not?). Finally there are |
| 4 bytes to hold the length of the next block which can save a seek on occasion if available. |
| (This EXTRA info came in with original commit of the bucketcache, HBASE-7404. It was formerly |
| known as EXTRA_SERIALIZATION_SPACE).</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.io.hfile.HFileBlock.BLOCK_METADATA_SPACE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="CHECKSUM_SIZE"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>CHECKSUM_SIZE</h4> |
| <pre>static final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.250">CHECKSUM_SIZE</a></pre> |
| <div class="block">Each checksum value is an integer that can be stored in 4 bytes.</div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../constant-values.html#org.apache.hadoop.hbase.io.hfile.HFileBlock.CHECKSUM_SIZE">Constant Field Values</a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="DUMMY_HEADER_NO_CHECKSUM"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>DUMMY_HEADER_NO_CHECKSUM</h4> |
| <pre>static final byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.252">DUMMY_HEADER_NO_CHECKSUM</a></pre> |
| </li> |
| </ul> |
| <a name="BLOCK_DESERIALIZER"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>BLOCK_DESERIALIZER</h4> |
| <pre>public static final <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a><<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.267">BLOCK_DESERIALIZER</a></pre> |
| <div class="block">Used deserializing blocks from Cache. <code> |
| ++++++++++++++ |
| + HFileBlock + |
| ++++++++++++++ |
| + Checksums + <= Optional |
| ++++++++++++++ |
| + Metadata! + <= See note on BLOCK_METADATA_SPACE above. |
| ++++++++++++++ |
| </code></div> |
| <dl> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#serialize-java.nio.ByteBuffer-boolean-"><code>serialize(ByteBuffer, boolean)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="DESERIALIZER_IDENTIFIER"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>DESERIALIZER_IDENTIFIER</h4> |
| <pre>private static final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.295">DESERIALIZER_IDENTIFIER</a></pre> |
| </li> |
| </ul> |
| <a name="totalChecksumBytes"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>totalChecksumBytes</h4> |
| <pre>private final int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.301">totalChecksumBytes</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="HFileBlock-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>HFileBlock</h4> |
| <pre>public <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.326">HFileBlock</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> blockType, |
| int onDiskSizeWithoutHeader, |
| int uncompressedSizeWithoutHeader, |
| long prevBlockOffset, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf, |
| boolean fillHeader, |
| long offset, |
| int nextBlockOnDiskSize, |
| int onDiskDataSizeWithHeader, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> allocator)</pre> |
| <div class="block">Creates a new <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFile.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>HFile</code></a> block from the given fields. This constructor is used only while |
| writing blocks and caching, and is sitting in a byte buffer and we want to stuff the block into |
| cache. |
| <p> |
| TODO: The caller presumes no checksumming |
| <p> |
| TODO: HFile block writer can also off-heap ? |
| </p> |
| required of this block instance since going into cache; checksum already verified on underlying |
| block data pulled in from filesystem. Is that correct? What if cache is SSD?</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>blockType</code> - the type of this block, see <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile"><code>BlockType</code></a></dd> |
| <dd><code>onDiskSizeWithoutHeader</code> - see <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#onDiskSizeWithoutHeader"><code>onDiskSizeWithoutHeader</code></a></dd> |
| <dd><code>uncompressedSizeWithoutHeader</code> - see <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#uncompressedSizeWithoutHeader"><code>uncompressedSizeWithoutHeader</code></a></dd> |
| <dd><code>prevBlockOffset</code> - see <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#prevBlockOffset"><code>prevBlockOffset</code></a></dd> |
| <dd><code>buf</code> - block buffer with header |
| (<a href="../../../../../../org/apache/hadoop/hbase/HConstants.html#HFILEBLOCK_HEADER_SIZE"><code>HConstants.HFILEBLOCK_HEADER_SIZE</code></a> bytes)</dd> |
| <dd><code>fillHeader</code> - when true, write the first 4 header fields into passed |
| buffer.</dd> |
| <dd><code>offset</code> - the file offset the block was read from</dd> |
| <dd><code>onDiskDataSizeWithHeader</code> - see <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#onDiskDataSizeWithHeader"><code>onDiskDataSizeWithHeader</code></a></dd> |
| <dd><code>fileContext</code> - HFile meta data</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="createFromBuff-org.apache.hadoop.hbase.nio.ByteBuff-boolean-long-int-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.ByteBuffAllocator-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createFromBuff</h4> |
| <pre>static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.353">createFromBuff</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf, |
| boolean usesHBaseChecksum, |
| long offset, |
| int nextBlockOnDiskSize, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> allocator) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Creates a block from an existing buffer starting with a header. Rewinds and takes ownership of |
| the buffer. By definition of rewind, ignores the buffer position, but if you slice the buffer |
| beforehand, it will rewind to that point.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>buf</code> - Has header, content, and trailing checksums if present.</dd> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getOnDiskSizeWithHeader-org.apache.hadoop.hbase.nio.ByteBuff-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOnDiskSizeWithHeader</h4> |
| <pre>private static int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.399">getOnDiskSizeWithHeader</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> headerBuf, |
| boolean checksumSupport)</pre> |
| <div class="block">Parse total on disk size including header and checksum.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>headerBuf</code> - Header ByteBuffer. Presumed exact size of header.</dd> |
| <dd><code>checksumSupport</code> - true if checksum verification is in use.</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Size of the block with header included.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getNextBlockOnDiskSize--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getNextBlockOnDiskSize</h4> |
| <pre>int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.408">getNextBlockOnDiskSize</a>()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the on-disk size of the next block (including the header size and any checksums if |
| present) read by peeking into the next block's header; use as a hint when doing a read |
| of the next block when scanning or running over a file.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getBlockType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getBlockType</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.413">getBlockType</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getBlockType--">Cacheable</a></code></span></div> |
| <div class="block">Returns the block type of this cached HFile block</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getBlockType--">getBlockType</a></code> in interface <code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="refCnt--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>refCnt</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.418">refCnt</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <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> in interface <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> in interface <code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="retain--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>retain</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.423">retain</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <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> in interface <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> in interface <code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="release--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>release</h4> |
| <pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.433">release</a>()</pre> |
| <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> in interface <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> in interface <code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="touch--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>touch</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.443">touch</a>()</pre> |
| <div class="block">Calling this method in strategic locations where HFileBlocks are referenced may help diagnose |
| potential buffer leaks. We pass the block itself as a default hint, but one can use |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#touch-java.lang.Object-"><code>touch(Object)</code></a> to pass their own hint as well.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#touch--">touch</a></code> in interface <code><a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html" title="interface in org.apache.hadoop.hbase.nio">HBaseReferenceCounted</a></code></dd> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code>touch</code> in interface <code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="touch-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>touch</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.448">touch</a>(<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> hint)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html#touch-java.lang.Object-">touch</a></code> in interface <code><a href="../../../../../../org/apache/hadoop/hbase/nio/HBaseReferenceCounted.html" title="interface in org.apache.hadoop.hbase.nio">HBaseReferenceCounted</a></code></dd> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code>touch</code> in interface <code>org.apache.hbase.thirdparty.io.netty.util.ReferenceCounted</code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDataBlockEncodingId--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDataBlockEncodingId</h4> |
| <pre>short <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.454">getDataBlockEncodingId</a>()</pre> |
| <div class="block">Returns get data block encoding id that was used to encode this block</div> |
| </li> |
| </ul> |
| <a name="getOnDiskSizeWithHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOnDiskSizeWithHeader</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.463">getOnDiskSizeWithHeader</a>()</pre> |
| <div class="block">Returns the on-disk size of header + data part + checksum.</div> |
| </li> |
| </ul> |
| <a name="getOnDiskSizeWithoutHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOnDiskSizeWithoutHeader</h4> |
| <pre>int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.468">getOnDiskSizeWithoutHeader</a>()</pre> |
| <div class="block">Returns the on-disk size of the data part + checksum (header excluded).</div> |
| </li> |
| </ul> |
| <a name="getUncompressedSizeWithoutHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getUncompressedSizeWithoutHeader</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.473">getUncompressedSizeWithoutHeader</a>()</pre> |
| <div class="block">Returns the uncompressed size of data part (header and checksum excluded).</div> |
| </li> |
| </ul> |
| <a name="getPrevBlockOffset--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getPrevBlockOffset</h4> |
| <pre>long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.478">getPrevBlockOffset</a>()</pre> |
| <div class="block">Returns the offset of the previous block of the same type in the file, or -1 if unknown</div> |
| </li> |
| </ul> |
| <a name="overwriteHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>overwriteHeader</h4> |
| <pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.486">overwriteHeader</a>()</pre> |
| <div class="block">Rewinds <code>buf</code> and writes first 4 header fields. <code>buf</code> position is modified as |
| side-effect.</div> |
| </li> |
| </ul> |
| <a name="getBufferWithoutHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getBufferWithoutHeader</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.503">getBufferWithoutHeader</a>()</pre> |
| <div class="block">Returns a buffer that does not include the header and checksum.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the buffer with header skipped and checksum omitted.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getBufferReadOnly--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getBufferReadOnly</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.518">getBufferReadOnly</a>()</pre> |
| <div class="block">Returns a read-only duplicate of the buffer this block stores internally ready to be read. |
| Clients must not modify the buffer object though they may set position and limit on the |
| returned buffer since we pass back a duplicate. This method has to be public because it is used |
| in <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CompoundBloomFilter.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>CompoundBloomFilter</code></a> to avoid object creation on every Bloom filter lookup, but has |
| to be used with caution. Buffer holds header, block content, and any follow-on checksums if |
| present.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the buffer of this block for read-only operations,the buffer includes header,but not |
| checksum.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getByteBuffAllocator--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getByteBuffAllocator</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/ByteBuffAllocator.html" title="class in org.apache.hadoop.hbase.io">ByteBuffAllocator</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.525">getByteBuffAllocator</a>()</pre> |
| </li> |
| </ul> |
| <a name="sanityCheckAssertion-long-long-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sanityCheckAssertion</h4> |
| <pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.529">sanityCheckAssertion</a>(long valueFromBuf, |
| long valueFromField, |
| <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> fieldName) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="sanityCheckAssertion-org.apache.hadoop.hbase.io.hfile.BlockType-org.apache.hadoop.hbase.io.hfile.BlockType-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sanityCheckAssertion</h4> |
| <pre>private void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.537">sanityCheckAssertion</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> valueFromBuf, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockType.html" title="enum in org.apache.hadoop.hbase.io.hfile">BlockType</a> valueFromField) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="sanityCheck--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sanityCheck</h4> |
| <pre>void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.552">sanityCheck</a>() |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Checks if the block is internally consistent, i.e. the first |
| <a href="../../../../../../org/apache/hadoop/hbase/HConstants.html#HFILEBLOCK_HEADER_SIZE"><code>HConstants.HFILEBLOCK_HEADER_SIZE</code></a> bytes of the buffer contain a valid header consistent |
| with the fields. Assumes a packed block structure. This function is primary for testing and |
| debugging, and is not thread-safe, because it alters the internal buffer pointer. Used by tests |
| only.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public <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/io/hfile/HFileBlock.html#line.589">toString</a>()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><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></code> in class <code><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></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="unpack-org.apache.hadoop.hbase.io.hfile.HFileContext-org.apache.hadoop.hbase.io.hfile.HFileBlock.FSReader-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unpack</h4> |
| <pre><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.629">unpack</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> fileContext, |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.FSReader.html" title="interface in org.apache.hadoop.hbase.io.hfile">HFileBlock.FSReader</a> reader) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Retrieves the decompressed/decrypted view of this block. An encoded block remains in its |
| encoded structure. Internal structures are shared between instances where applicable.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="allocateBufferForUnpacking--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>allocateBufferForUnpacking</h4> |
| <pre>private <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.668">allocateBufferForUnpacking</a>()</pre> |
| <div class="block">Always allocates a new buffer of the correct size. Copies header bytes from the existing |
| buffer. Does not change header fields. Reserve room to keep checksum bytes too.</div> |
| </li> |
| </ul> |
| <a name="isUnpacked--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isUnpacked</h4> |
| <pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.688">isUnpacked</a>()</pre> |
| <div class="block">Return true when this block's buffer has been unpacked, false otherwise. Note this is a |
| calculated heuristic, not tracked attribute of the block.</div> |
| </li> |
| </ul> |
| <a name="getOffset--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOffset</h4> |
| <pre>long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.700">getOffset</a>()</pre> |
| <div class="block">Cannot be <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#UNSET"><code>UNSET</code></a>. Must be a legitimate value. Used re-making the <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/BlockCacheKey.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>BlockCacheKey</code></a> |
| when block is returned to the cache.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the offset of this block in the file it was read from</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getByteStream--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getByteStream</h4> |
| <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/io/DataInputStream.html?is-external=true" title="class or interface in java.io">DataInputStream</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.708">getByteStream</a>()</pre> |
| <div class="block">Returns a byte stream reading the data(excluding header and checksum) of this block</div> |
| </li> |
| </ul> |
| <a name="heapSize--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>heapSize</h4> |
| <pre>public long <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.715">heapSize</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/io/HeapSize.html#heapSize--">HeapSize</a></code></span></div> |
| <div class="block">Return the approximate 'exclusive deep size' of implementing object. Includes count of payload |
| and hosting object sizings.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/HeapSize.html#heapSize--">heapSize</a></code> in interface <code><a href="../../../../../../org/apache/hadoop/hbase/io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="isSharedMem--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>isSharedMem</h4> |
| <pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.729">isSharedMem</a>()</pre> |
| <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> |
| </li> |
| </ul> |
| <a name="sanityCheckUncompressed--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>sanityCheckUncompressed</h4> |
| <pre>void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1925">sanityCheckUncompressed</a>() |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">An additional sanity-check in case no compression or encryption is being used.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getSerializedLength--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getSerializedLength</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1935">getSerializedLength</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getSerializedLength--">Cacheable</a></code></span></div> |
| <div class="block">Returns the length of the ByteBuffer required to serialized the object. If the object cannot be |
| serialized, it should return 0.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getSerializedLength--">getSerializedLength</a></code> in interface <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="returnLabel">Returns:</span></dt> |
| <dd>int length in bytes of the serialized form or 0 if the object cannot be cached.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="serialize-java.nio.ByteBuffer-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>serialize</h4> |
| <pre>public void <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1945">serialize</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> destination, |
| boolean includeNextBlockMetadata)</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#serialize-java.nio.ByteBuffer-boolean-">Cacheable</a></code></span></div> |
| <div class="block">Serializes its data into destination.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#serialize-java.nio.ByteBuffer-boolean-">serialize</a></code> in interface <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="paramLabel">Parameters:</span></dt> |
| <dd><code>destination</code> - Where to serialize to</dd> |
| <dd><code>includeNextBlockMetadata</code> - Whether to include nextBlockMetadata in the Cache block.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getMetaData-java.nio.ByteBuffer-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getMetaData</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1958">getMetaData</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> bb)</pre> |
| <div class="block">For use by bucketcache. This exposes internals.</div> |
| </li> |
| </ul> |
| <a name="addMetaData-java.nio.ByteBuffer-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>addMetaData</h4> |
| <pre>private <a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1968">addMetaData</a>(<a href="https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html?is-external=true" title="class or interface in java.nio">ByteBuffer</a> destination, |
| boolean includeNextBlockMetadata)</pre> |
| <div class="block">Adds metadata at current position (position is moved forward). Does not flip or reset.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>The passed <code>destination</code> with metadata added.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDeserializer--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDeserializer</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/CacheableDeserializer.html" title="interface in org.apache.hadoop.hbase.io.hfile">CacheableDeserializer</a><<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html" title="interface in org.apache.hadoop.hbase.io.hfile">Cacheable</a>> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1979">getDeserializer</a>()</pre> |
| <div class="block"><span class="descfrmTypeLabel">Description copied from interface: <code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">Cacheable</a></code></span></div> |
| <div class="block">Returns CacheableDeserializer instance which reconstructs original object from ByteBuffer.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Specified by:</span></dt> |
| <dd><code><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/Cacheable.html#getDeserializer--">getDeserializer</a></code> in interface <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="returnLabel">Returns:</span></dt> |
| <dd>CacheableDeserialzer instance.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="hashCode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>hashCode</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1984">hashCode</a>()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><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></code> in class <code><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></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="equals-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>equals</h4> |
| <pre>public boolean <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.1997">equals</a>(<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> comparison)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><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></code> in class <code><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></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getDataBlockEncoding--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDataBlockEncoding</h4> |
| <pre><a href="../../../../../../org/apache/hadoop/hbase/io/encoding/DataBlockEncoding.html" title="enum in org.apache.hadoop.hbase.io.encoding">DataBlockEncoding</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2038">getDataBlockEncoding</a>()</pre> |
| </li> |
| </ul> |
| <a name="getChecksumType--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getChecksumType</h4> |
| <pre>byte <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2045">getChecksumType</a>()</pre> |
| </li> |
| </ul> |
| <a name="getBytesPerChecksum--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getBytesPerChecksum</h4> |
| <pre>int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2049">getBytesPerChecksum</a>()</pre> |
| </li> |
| </ul> |
| <a name="getOnDiskDataSizeWithHeader--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOnDiskDataSizeWithHeader</h4> |
| <pre>int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2054">getOnDiskDataSizeWithHeader</a>()</pre> |
| <div class="block">Returns the size of data on disk + header. Excludes checksum.</div> |
| </li> |
| </ul> |
| <a name="totalChecksumBytes--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>totalChecksumBytes</h4> |
| <pre>int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2065">totalChecksumBytes</a>()</pre> |
| <div class="block">Return the number of bytes required to store all the checksums for this block. Each checksum |
| value is a 4 byte integer. <br/> |
| NOTE: ByteBuff returned by <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferWithoutHeader--"><code>getBufferWithoutHeader()</code></a> and |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getBufferReadOnly--"><code>getBufferReadOnly()</code></a> or DataInputStream returned by |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html#getByteStream--"><code>getByteStream()</code></a> does not include checksum.</div> |
| </li> |
| </ul> |
| <a name="computeTotalChecksumBytes--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>computeTotalChecksumBytes</h4> |
| <pre>private int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2069">computeTotalChecksumBytes</a>()</pre> |
| </li> |
| </ul> |
| <a name="headerSize--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>headerSize</h4> |
| <pre>public int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2084">headerSize</a>()</pre> |
| <div class="block">Returns the size of this block header.</div> |
| </li> |
| </ul> |
| <a name="headerSize-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>headerSize</h4> |
| <pre>public static int <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2091">headerSize</a>(boolean usesHBaseChecksum)</pre> |
| <div class="block">Maps a minor version to the size of the header.</div> |
| </li> |
| </ul> |
| <a name="getDummyHeaderForVersion--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDummyHeaderForVersion</h4> |
| <pre>byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2101">getDummyHeaderForVersion</a>()</pre> |
| <div class="block">Return the appropriate DUMMY_HEADER for the minor version</div> |
| </li> |
| </ul> |
| <a name="getDummyHeaderForVersion-boolean-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getDummyHeaderForVersion</h4> |
| <pre>private static byte[] <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2108">getDummyHeaderForVersion</a>(boolean usesHBaseChecksum)</pre> |
| <div class="block">Return the appropriate DUMMY_HEADER for the minor version</div> |
| </li> |
| </ul> |
| <a name="getHFileContext--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getHFileContext</h4> |
| <pre>public <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileContext.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileContext</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2116">getHFileContext</a>()</pre> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>This HFileBlocks fileContext which will a derivative of the fileContext for the file |
| from which this block's data was originally read.</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toStringHeader-org.apache.hadoop.hbase.nio.ByteBuff-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toStringHeader</h4> |
| <pre>static <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/io/hfile/HFileBlock.html#line.2124">toStringHeader</a>(<a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> buf) |
| throws <a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></pre> |
| <div class="block">Convert the contents of the block header into a human readable string. This is mostly helpful |
| for debugging. This assumes that the block has minor version > 0.</div> |
| <dl> |
| <dt><span class="throwsLabel">Throws:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/io/IOException.html?is-external=true" title="class or interface in java.io">IOException</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="createBuilder-org.apache.hadoop.hbase.io.hfile.HFileBlock-org.apache.hadoop.hbase.nio.ByteBuff-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>createBuilder</h4> |
| <pre>private static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlockBuilder.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlockBuilder</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2151">createBuilder</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> newBuff)</pre> |
| <div class="block">Creates a new HFileBlockBuilder from the existing block and a new ByteBuff. The builder will be |
| loaded with all of the original fields from blk, except now using the newBuff and setting |
| isSharedMem based on the source of the passed in newBuff. An existing HFileBlock may have been |
| an <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/ExclusiveMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>ExclusiveMemHFileBlock</code></a>, but the new buffer might call for a |
| <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/SharedMemHFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile"><code>SharedMemHFileBlock</code></a>. Or vice versa.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>blk</code> - the block to clone from</dd> |
| <dd><code>newBuff</code> - the new buffer to use</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="shallowClone-org.apache.hadoop.hbase.io.hfile.HFileBlock-org.apache.hadoop.hbase.nio.ByteBuff-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>shallowClone</h4> |
| <pre>private static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2161">shallowClone</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk, |
| <a href="../../../../../../org/apache/hadoop/hbase/nio/ByteBuff.html" title="class in org.apache.hadoop.hbase.nio">ByteBuff</a> newBuf)</pre> |
| </li> |
| </ul> |
| <a name="deepCloneOnHeap-org.apache.hadoop.hbase.io.hfile.HFileBlock-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>deepCloneOnHeap</h4> |
| <pre>static <a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> <a href="../../../../../../src-html/org/apache/hadoop/hbase/io/hfile/HFileBlock.html#line.2165">deepCloneOnHeap</a>(<a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.html" title="class in org.apache.hadoop.hbase.io.hfile">HFileBlock</a> blk)</pre> |
| </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/HFileBlock.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/HFile.WriterFactory.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../../../org/apache/hadoop/hbase/io/hfile/HFileBlock.BlockDeserializer.html" title="class in org.apache.hadoop.hbase.io.hfile"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../../../index.html?org/apache/hadoop/hbase/io/hfile/HFileBlock.html" target="_top">Frames</a></li> |
| <li><a href="HFileBlock.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../../../allclasses-noframe.html">All 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: </li> |
| <li><a href="#nested.class.summary">Nested</a> | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </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 © 2007–2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p> |
| </body> |
| </html> |