blob: 875532749a0c6c00ffee3cc2203e3637b7e2235c [file] [log] [blame]
<!DOCTYPE HTML>
<html lang="en">
<head>
<!-- Generated by javadoc (17) -->
<title>WALEdit (Apache HBase 4.0.0-alpha-1-SNAPSHOT API)</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name="description" content="declaration: package: org.apache.hadoop.hbase.wal, class: WALEdit">
<meta name="generator" content="javadoc/ClassWriterImpl">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../script-dir/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-3.6.1.min.js"></script>
<script type="text/javascript" src="../../../../../script-dir/jquery-ui.min.js"></script>
</head>
<body class="class-declaration-page">
<script type="text/javascript">var evenRowColor = "even-row-color";
var oddRowColor = "odd-row-color";
var tableTab = "table-tab";
var activeTableTab = "active-table-tab";
var pathtoroot = "../../../../../";
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<div class="flex-box">
<header role="banner" class="flex-header">
<nav role="navigation">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="top-nav" id="navbar-top">
<div class="skip-nav"><a href="#skip-navbar-top" title="Skip navigation links">Skip navigation links</a></div>
<ul id="navbar-top-firstrow" class="nav-list" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="nav-bar-cell1-rev">Class</li>
<li><a href="class-use/WALEdit.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#class">Help</a></li>
</ul>
</div>
<div class="sub-nav">
<div>
<ul class="sub-nav-list">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field-summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-summary">Method</a></li>
</ul>
<ul class="sub-nav-list">
<li>Detail:&nbsp;</li>
<li><a href="#field-detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor-detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method-detail">Method</a></li>
</ul>
</div>
<div class="nav-list-search"><label for="search-input">SEARCH:</label>
<input type="text" id="search-input" value="search" disabled="disabled">
<input type="reset" id="reset-button" value="reset" disabled="disabled">
</div>
</div>
<!-- ========= END OF TOP NAVBAR ========= -->
<span class="skip-nav" id="skip-navbar-top"></span></nav>
</header>
<div class="flex-content">
<main role="main">
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="sub-title"><span class="package-label-in-type">Package</span>&nbsp;<a href="package-summary.html">org.apache.hadoop.hbase.wal</a></div>
<h1 title="Class WALEdit" class="title">Class WALEdit</h1>
</div>
<div class="inheritance" title="Inheritance Tree"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">java.lang.Object</a>
<div class="inheritance">org.apache.hadoop.hbase.wal.WALEdit</div>
</div>
<section class="class-description" id="class-description">
<dl class="notes">
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="../io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a></code></dd>
</dl>
<hr>
<div class="type-signature"><span class="annotations">@LimitedPrivate({"Replication","Coprocesssor"})
</span><span class="modifiers">public class </span><span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-77">WALEdit</a></span>
<span class="extends-implements">extends <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a>
implements <a href="../io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a></span></div>
<div class="block">Used in HBase's transaction log (WAL) to represent a collection of edits (Cell/KeyValue objects)
that came in as a single transaction. All the edits for a given transaction are written out as a
single record, in PB format, followed (optionally) by Cells written via the WALCellEncoder.
<p>
This class is LimitedPrivate for CPs to read-only. The <a href="#add(org.apache.hadoop.hbase.Cell,byte%5B%5D)"><code>add(org.apache.hadoop.hbase.Cell, byte[])</code></a> methods are classified as
private methods, not for use by CPs.
</p>
<p>
A particular WALEdit 'type' is the 'meta' type used to mark key operational events in the WAL
such as compaction, flush, or region open. These meta types do not traverse hbase memstores. They
are edits made by the hbase system rather than edit data submitted by clients. They only show in
the WAL. These 'Meta' types have not been formally specified (or made into an explicit class
type). They evolved organically. HBASE-8457 suggests codifying a WALEdit 'type' by adding a type
field to WALEdit that gets serialized into the WAL. TODO. Would have to work on the
consumption-side. Reading WALs on replay we seem to consume a Cell-at-a-time rather than by
WALEdit. We are already in the below going out of our way to figure particular types -- e.g. if a
compaction, replay, or close meta Marker -- during normal processing so would make sense to do
this. Current system is an awkward marking of Cell columnfamily as <a href="#METAFAMILY"><code>METAFAMILY</code></a> and then
setting qualifier based off meta edit type. For replay-time where we read Cell-at-a-time, there
are utility methods below for figuring meta type. See also
<a href="#createBulkLoadEvent(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor)"><code>createBulkLoadEvent(RegionInfo, WALProtos.BulkLoadDescriptor)</code></a>, etc., for where we create
meta WALEdit instances.
</p>
<p>
WALEdit will accumulate a Set of all column family names referenced by the Cells
<a href="#add(org.apache.hadoop.hbase.Cell)"><code>add(Cell)</code></a>'d. This is an optimization. Usually when loading a WALEdit, we have the column
family name to-hand.. just shove it into the WALEdit if available. Doing this, we can save on a
parse of each Cell to figure column family down the line when we go to add the WALEdit to the WAL
file. See the hand-off in FSWALEntry Constructor.</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="WALKey.html" title="interface in org.apache.hadoop.hbase.wal"><code>WALKey</code></a></li>
</ul>
</dd>
</dl>
</section>
<section class="summary">
<ul class="summary-list">
<!-- =========== FIELD SUMMARY =========== -->
<li>
<section class="field-summary" id="field-summary">
<h2>Field Summary</h2>
<div class="caption"><span>Fields</span></div>
<div class="summary-table three-column-summary">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Field</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color"><code>static final byte[]</code></div>
<div class="col-second even-row-color"><code><a href="#BULK_LOAD" class="member-name-link">BULK_LOAD</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></div>
<div class="col-second odd-row-color"><code><a href="#cells" class="member-name-link">cells</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final byte[]</code></div>
<div class="col-second even-row-color"><code><a href="#COMPACTION" class="member-name-link">COMPACTION</a></code></div>
<div class="col-last even-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0.</div>
</div>
</div>
<div class="col-first odd-row-color"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</code></div>
<div class="col-second odd-row-color"><code><a href="#families" class="member-name-link">families</a></code></div>
<div class="col-last odd-row-color">
<div class="block">All the Cell families in <code>cells</code>.</div>
</div>
<div class="col-first even-row-color"><code>static final byte[]</code></div>
<div class="col-second even-row-color"><code><a href="#FLUSH" class="member-name-link">FLUSH</a></code></div>
<div class="col-last even-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0.</div>
</div>
</div>
<div class="col-first odd-row-color"><code>static final byte[]</code></div>
<div class="col-second odd-row-color"><code><a href="#METAFAMILY" class="member-name-link">METAFAMILY</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>static final byte[]</code></div>
<div class="col-second even-row-color"><code><a href="#METAROW" class="member-name-link">METAROW</a></code></div>
<div class="col-last even-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0.</div>
</div>
</div>
<div class="col-first odd-row-color"><code>static final byte[]</code></div>
<div class="col-second odd-row-color"><code><a href="#REGION_EVENT" class="member-name-link">REGION_EVENT</a></code></div>
<div class="col-last odd-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0.</div>
</div>
</div>
<div class="col-first even-row-color"><code>private static final byte[]</code></div>
<div class="col-second even-row-color"><code><a href="#REGION_EVENT_CLOSE" class="member-name-link">REGION_EVENT_CLOSE</a></code></div>
<div class="col-last even-row-color">
<div class="block">We use this define figuring if we are carrying a close event.</div>
</div>
<div class="col-first odd-row-color"><code>private static final byte[]</code></div>
<div class="col-second odd-row-color"><code><a href="#REGION_EVENT_PREFIX" class="member-name-link">REGION_EVENT_PREFIX</a></code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-first even-row-color"><code>private static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color"><code><a href="#REGION_EVENT_PREFIX_STR" class="member-name-link">REGION_EVENT_PREFIX_STR</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>private static final <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second odd-row-color"><code><a href="#REGION_EVENT_STR" class="member-name-link">REGION_EVENT_STR</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Qualifier for region event meta 'Marker' WALEdits start with the <a href="#REGION_EVENT_PREFIX"><code>REGION_EVENT_PREFIX</code></a>
prefix ('HBASE::REGION_EVENT::').</div>
</div>
<div class="col-first even-row-color"><code>private final boolean</code></div>
<div class="col-second even-row-color"><code><a href="#replay" class="member-name-link">replay</a></code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-first odd-row-color"><code>static final byte[]</code></div>
<div class="col-second odd-row-color"><code><a href="#REPLICATION_MARKER" class="member-name-link">REPLICATION_MARKER</a></code></div>
<div class="col-last odd-row-color">
<div class="block">Periodically <a href="../replication/regionserver/ReplicationMarkerChore.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><code>ReplicationMarkerChore</code></a>
will create marker edits with family as <a href="#METAFAMILY"><code>METAFAMILY</code></a> and
<a href="#REPLICATION_MARKER"><code>REPLICATION_MARKER</code></a> as qualifier and an empty value.</div>
</div>
</div>
</section>
</li>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<li>
<section class="constructor-summary" id="constructor-summary">
<h2>Constructor Summary</h2>
<div class="caption"><span>Constructors</span></div>
<div class="summary-table two-column-summary">
<div class="table-header col-first">Constructor</div>
<div class="table-header col-last">Description</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E()" class="member-name-link">WALEdit</a>()</code></div>
<div class="col-last even-row-color">&nbsp;</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(boolean)" class="member-name-link">WALEdit</a><wbr>(boolean&nbsp;replay)</code></div>
<div class="col-last odd-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">since 2.0.1 and will be removed in 4.0.0.</div>
</div>
</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(int)" class="member-name-link">WALEdit</a><wbr>(int&nbsp;cellCount)</code></div>
<div class="col-last even-row-color">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">since 2.0.1 and will be removed in 4.0.0.</div>
</div>
</div>
<div class="col-constructor-name odd-row-color"><code><a href="#%3Cinit%3E(int,boolean)" class="member-name-link">WALEdit</a><wbr>(int&nbsp;cellCount,
boolean&nbsp;isReplay)</code></div>
<div class="col-last odd-row-color">&nbsp;</div>
<div class="col-constructor-name even-row-color"><code><a href="#%3Cinit%3E(org.apache.hadoop.hbase.wal.WALEdit)" class="member-name-link">WALEdit</a><wbr>(<a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;walEdit)</code></div>
<div class="col-last even-row-color">
<div class="block">Create a new WALEdit from a existing <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal"><code>WALEdit</code></a>.</div>
</div>
</div>
</section>
</li>
<!-- ========== METHOD SUMMARY =========== -->
<li>
<section class="method-summary" id="method-summary">
<h2>Method Summary</h2>
<div id="method-summary-table">
<div class="table-tabs" role="tablist" aria-orientation="horizontal"><button id="method-summary-table-tab0" role="tab" aria-selected="true" aria-controls="method-summary-table.tabpanel" tabindex="0" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table', 3)" class="active-table-tab">All Methods</button><button id="method-summary-table-tab1" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab1', 3)" class="table-tab">Static Methods</button><button id="method-summary-table-tab2" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab2', 3)" class="table-tab">Instance Methods</button><button id="method-summary-table-tab4" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab4', 3)" class="table-tab">Concrete Methods</button><button id="method-summary-table-tab6" role="tab" aria-selected="false" aria-controls="method-summary-table.tabpanel" tabindex="-1" onkeydown="switchTab(event)" onclick="show('method-summary-table', 'method-summary-table-tab6', 3)" class="table-tab">Deprecated Methods</button></div>
<div id="method-summary-table.tabpanel" role="tabpanel">
<div class="summary-table three-column-summary" aria-labelledby="method-summary-table-tab0">
<div class="table-header col-first">Modifier and Type</div>
<div class="table-header col-second">Method</div>
<div class="table-header col-last">Description</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#add(java.util.List)" class="member-name-link">add</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends <a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#add(java.util.Map)" class="member-name-link">add</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;byte[],<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&gt;&nbsp;familyMap)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Append the given map of family->edits to a WALEdit data structure.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#add(org.apache.hadoop.hbase.Cell)" class="member-name-link">add</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#add(org.apache.hadoop.hbase.Cell,byte%5B%5D)" class="member-name-link">add</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
byte[]&nbsp;family)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addCell(org.apache.hadoop.hbase.Cell)" class="member-name-link">addCell</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private void</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#addFamily(byte%5B%5D)" class="member-name-link">addFamily</a><wbr>(byte[]&nbsp;family)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createBulkLoadEvent(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor)" class="member-name-link">createBulkLoadEvent</a><wbr>(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor&nbsp;bulkLoadDescriptor)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Create a bulk loader WALEdit</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createCompaction(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor)" class="member-name-link">createCompaction</a><wbr>(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor&nbsp;c)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns A Marker WALEdit that has <code>c</code> serialized as its value</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createFlushWALEdit(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor)" class="member-name-link">createFlushWALEdit</a><wbr>(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor&nbsp;f)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static byte[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createRegionEventDescriptorQualifier(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor.EventType)" class="member-name-link">createRegionEventDescriptorQualifier</a><wbr>(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor.EventType&nbsp;t)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createRegionEventWALEdit(byte%5B%5D,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor)" class="member-name-link">createRegionEventWALEdit</a><wbr>(byte[]&nbsp;rowForRegion,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor&nbsp;regionEventDesc)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createRegionEventWALEdit(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor)" class="member-name-link">createRegionEventWALEdit</a><wbr>(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor&nbsp;regionEventDesc)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#createReplicationMarkerEdit(byte%5B%5D,long)" class="member-name-link">createReplicationMarkerEdit</a><wbr>(byte[]&nbsp;rowKey,
long&nbsp;timestamp)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Creates a replication tracker edit with <a href="#METAFAMILY"><code>METAFAMILY</code></a> family and
<a href="#REPLICATION_MARKER"><code>REPLICATION_MARKER</code></a> qualifier and has null value.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#estimatedSerializedSizeOf()" class="member-name-link">estimatedSerializedSizeOf</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getBulkLoadDescriptor(org.apache.hadoop.hbase.Cell)" class="member-name-link">getBulkLoadDescriptor</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Deserialized and returns a BulkLoadDescriptor from the passed in Cell</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getCells()" class="member-name-link">getCells</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getCompaction(org.apache.hadoop.hbase.Cell)" class="member-name-link">getCompaction</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Deserialized and returns a CompactionDescriptor is the KeyValue contains one.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getFamilies()" class="member-name-link">getFamilies</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">For use by FSWALEntry ONLY.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getFlushDescriptor(org.apache.hadoop.hbase.Cell)" class="member-name-link">getFlushDescriptor</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>private <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#getOrCreateFamilies()" class="member-name-link">getOrCreateFamilies</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getRegionEventDescriptor(org.apache.hadoop.hbase.Cell)" class="member-name-link">getRegionEventDescriptor</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static byte[]</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#getRowForRegion(org.apache.hadoop.hbase.client.RegionInfo)" class="member-name-link">getRowForRegion</a><wbr>(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>long</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#heapSize()" class="member-name-link">heapSize</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Return the approximate 'exclusive deep size' of implementing object.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#isCompactionMarker(org.apache.hadoop.hbase.Cell)" class="member-name-link">isCompactionMarker</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Returns true if the given cell is a serialized <code>WALProtos.CompactionDescriptor</code></div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isEmpty()" class="member-name-link">isEmpty</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isMetaEdit()" class="member-name-link">isMetaEdit</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code>static boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6"><code><a href="#isMetaEditFamily(byte%5B%5D)" class="member-name-link">isMetaEditFamily</a><wbr>(byte[]&nbsp;f)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4 method-summary-table-tab6">
<div class="block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0.</div>
</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#isMetaEditFamily(org.apache.hadoop.hbase.Cell)" class="member-name-link">isMetaEditFamily</a><wbr>(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Replaying WALs can read Cell-at-a-time so need this method in those cases.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isRegionCloseMarker()" class="member-name-link">isRegionCloseMarker</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Public so can be accessed from regionserver.wal package.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>boolean</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#isReplay()" class="member-name-link">isReplay</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code>static boolean</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4"><code><a href="#isReplicationMarkerEdit(org.apache.hadoop.hbase.wal.WALEdit)" class="member-name-link">isReplicationMarkerEdit</a><wbr>(<a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edit)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab1 method-summary-table-tab4">
<div class="block">Checks whether this edit is a replication marker edit.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#readFromCells(org.apache.hadoop.hbase.codec.Codec.Decoder,int)" class="member-name-link">readFromCells</a><wbr>(<a href="../codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a>&nbsp;cellDecoder,
int&nbsp;expectedCount)</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">Reads WALEdit from cells.</div>
</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>void</code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#setCells(java.util.ArrayList)" class="member-name-link">setCells</a><wbr>(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells)</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">
<div class="block">This is not thread safe.</div>
</div>
<div class="col-first odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code>int</code></div>
<div class="col-second odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#size()" class="member-name-link">size</a>()</code></div>
<div class="col-last odd-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
<div class="col-first even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></code></div>
<div class="col-second even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4"><code><a href="#toString()" class="member-name-link">toString</a>()</code></div>
<div class="col-last even-row-color method-summary-table method-summary-table-tab2 method-summary-table-tab4">&nbsp;</div>
</div>
</div>
</div>
<div class="inherited-list">
<h3 id="methods-inherited-from-class-java.lang.Object">Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></h3>
<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#clone()" title="class or interface in java.lang" class="external-link">clone</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang" class="external-link">equals</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#finalize()" title="class or interface in java.lang" class="external-link">finalize</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#getClass()" title="class or interface in java.lang" class="external-link">getClass</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#hashCode()" title="class or interface in java.lang" class="external-link">hashCode</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notify()" title="class or interface in java.lang" class="external-link">notify</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#notifyAll()" title="class or interface in java.lang" class="external-link">notifyAll</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait()" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long)" title="class or interface in java.lang" class="external-link">wait</a>, <a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#wait(long,int)" title="class or interface in java.lang" class="external-link">wait</a></code></div>
</section>
</li>
</ul>
</section>
<section class="details">
<ul class="details-list">
<!-- ============ FIELD DETAIL =========== -->
<li>
<section class="field-details" id="field-detail">
<h2>Field Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="METAFAMILY">
<h3>METAFAMILY</h3>
<div class="member-signature"><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-83">METAFAMILY</a></span></div>
</section>
</li>
<li>
<section class="detail" id="METAROW">
<h3>METAROW</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-88">METAROW</a></span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0. Not used.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="COMPACTION">
<h3>COMPACTION</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
@Private
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-95">COMPACTION</a></span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0. Make it protected, internal-use only. Use
<a href="#isCompactionMarker(org.apache.hadoop.hbase.Cell)"><code>isCompactionMarker(Cell)</code></a></div>
</div>
</section>
</li>
<li>
<section class="detail" id="FLUSH">
<h3>FLUSH</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
@Private
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-102">FLUSH</a></span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0. Make it protected, internal-use only.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="REGION_EVENT_STR">
<h3>REGION_EVENT_STR</h3>
<div class="member-signature"><span class="modifiers">private static final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-116">REGION_EVENT_STR</a></span></div>
<div class="block">Qualifier for region event meta 'Marker' WALEdits start with the <a href="#REGION_EVENT_PREFIX"><code>REGION_EVENT_PREFIX</code></a>
prefix ('HBASE::REGION_EVENT::'). After the prefix, we note the type of the event which we get
from the RegionEventDescriptor protobuf instance type (A RegionEventDescriptor protobuf
instance is written as the meta Marker Cell value). Adding a type suffix means we do not have
to deserialize the protobuf to figure out what type of event this is.. .just read the qualifier
suffix. For example, a close region event descriptor will have a qualifier of
HBASE::REGION_EVENT::REGION_CLOSE. See WAL.proto and the EventType in RegionEventDescriptor
protos for all possible event types.</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.wal.WALEdit.REGION_EVENT_STR">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="REGION_EVENT_PREFIX_STR">
<h3>REGION_EVENT_PREFIX_STR</h3>
<div class="member-signature"><span class="modifiers">private static final</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-117">REGION_EVENT_PREFIX_STR</a></span></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="../../../../../constant-values.html#org.apache.hadoop.hbase.wal.WALEdit.REGION_EVENT_PREFIX_STR">Constant Field Values</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="REGION_EVENT_PREFIX">
<h3>REGION_EVENT_PREFIX</h3>
<div class="member-signature"><span class="modifiers">private static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-118">REGION_EVENT_PREFIX</a></span></div>
</section>
</li>
<li>
<section class="detail" id="REGION_EVENT">
<h3>REGION_EVENT</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-123">REGION_EVENT</a></span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0. Remove. Not for external use. Not used.</div>
</div>
</section>
</li>
<li>
<section class="detail" id="REGION_EVENT_CLOSE">
<h3>REGION_EVENT_CLOSE</h3>
<div class="member-signature"><span class="modifiers">private static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-129">REGION_EVENT_CLOSE</a></span></div>
<div class="block">We use this define figuring if we are carrying a close event.</div>
</section>
</li>
<li>
<section class="detail" id="BULK_LOAD">
<h3>BULK_LOAD</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-132">BULK_LOAD</a></span></div>
</section>
</li>
<li>
<section class="detail" id="REPLICATION_MARKER">
<h3>REPLICATION_MARKER</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public static final</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-148">REPLICATION_MARKER</a></span></div>
<div class="block">Periodically <a href="../replication/regionserver/ReplicationMarkerChore.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><code>ReplicationMarkerChore</code></a>
will create marker edits with family as <a href="#METAFAMILY"><code>METAFAMILY</code></a> and
<a href="#REPLICATION_MARKER"><code>REPLICATION_MARKER</code></a> as qualifier and an empty value.
org.apache.hadoop.hbase.replication.regionserver.ReplicationSourceWALReader will populate the
Replication Marker edit with region_server_name, wal_name and wal_offset encoded in
<code>WALProtos.ReplicationMarkerDescriptor</code>
object. <a href="../replication/regionserver/Replication.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><code>Replication</code></a> will change the
REPLICATION_SCOPE for this edit to GLOBAL so that it can replicate. On the sink cluster,
<a href="../replication/regionserver/ReplicationSink.html" title="class in org.apache.hadoop.hbase.replication.regionserver"><code>ReplicationSink</code></a> will convert the
ReplicationMarkerDescriptor into a Put mutation to REPLICATION_SINK_TRACKER_TABLE_NAME_STR
table.</div>
</section>
</li>
<li>
<section class="detail" id="replay">
<h3>replay</h3>
<div class="member-signature"><span class="modifiers">private final transient</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-151">replay</a></span></div>
</section>
</li>
<li>
<section class="detail" id="cells">
<h3>cells</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-153">cells</a></span></div>
</section>
</li>
<li>
<section class="detail" id="families">
<h3>families</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-160">families</a></span></div>
<div class="block">All the Cell families in <code>cells</code>. Updated by <a href="#add(org.apache.hadoop.hbase.Cell)"><code>add(Cell)</code></a> and
<a href="#add(java.util.Map)"><code>add(Map)</code></a>. This Set is passed to the FSWALEntry so it does not have to recalculate the
Set of families in a transaction; makes for a bunch of CPU savings.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<li>
<section class="constructor-details" id="constructor-detail">
<h2>Constructor Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="&lt;init&gt;()">
<h3>WALEdit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-162">WALEdit</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(boolean)">
<h3>WALEdit</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-172">WALEdit</a></span><wbr><span class="parameters">(boolean&nbsp;replay)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">since 2.0.1 and will be removed in 4.0.0. Use <a href="#%3Cinit%3E(int,boolean)"><code>WALEdit(int, boolean)</code></a>
instead.</div>
</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="#%3Cinit%3E(int,boolean)"><code>WALEdit(int, boolean)</code></a></li>
<li><a href="https://issues.apache.org/jira/browse/HBASE-20781">HBASE-20781</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(int)">
<h3>WALEdit</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-183">WALEdit</a></span><wbr><span class="parameters">(int&nbsp;cellCount)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">since 2.0.1 and will be removed in 4.0.0. Use <a href="#%3Cinit%3E(int,boolean)"><code>WALEdit(int, boolean)</code></a>
instead.</div>
</div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list-long">
<li><a href="#%3Cinit%3E(int,boolean)"><code>WALEdit(int, boolean)</code></a></li>
<li><a href="https://issues.apache.org/jira/browse/HBASE-20781">HBASE-20781</a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(int,boolean)">
<h3>WALEdit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-191">WALEdit</a></span><wbr><span class="parameters">(int&nbsp;cellCount,
boolean&nbsp;isReplay)</span></div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>cellCount</code> - Pass so can pre-size the WALEdit. Optimization.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="&lt;init&gt;(org.apache.hadoop.hbase.wal.WALEdit)">
<h3>WALEdit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-199">WALEdit</a></span><wbr><span class="parameters">(<a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;walEdit)</span></div>
<div class="block">Create a new WALEdit from a existing <a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal"><code>WALEdit</code></a>.</div>
</section>
</li>
</ul>
</section>
</li>
<!-- ============ METHOD DETAIL ========== -->
<li>
<section class="method-details" id="method-detail">
<h2>Method Details</h2>
<ul class="member-list">
<li>
<section class="detail" id="getOrCreateFamilies()">
<h3>getOrCreateFamilies</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-209">getOrCreateFamilies</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="getFamilies()">
<h3>getFamilies</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Set.html" title="class or interface in java.util" class="external-link">Set</a>&lt;byte[]&gt;</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-220">getFamilies</a></span>()</div>
<div class="block">For use by FSWALEntry ONLY. An optimization.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>All families in <a href="#getCells()"><code>getCells()</code></a>; may be null.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isMetaEditFamily(byte[])">
<h3>isMetaEditFamily</h3>
<div class="member-signature"><span class="annotations"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Deprecated.html" title="class or interface in java.lang" class="external-link">@Deprecated</a>
</span><span class="modifiers">public static</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-228">isMetaEditFamily</a></span><wbr><span class="parameters">(byte[]&nbsp;f)</span></div>
<div class="deprecation-block"><span class="deprecated-label">Deprecated.</span>
<div class="deprecation-comment">Since 2.3.0. Do not expose. Make protected.</div>
</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>True is <code>f</code> is <a href="#METAFAMILY"><code>METAFAMILY</code></a></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isMetaEditFamily(org.apache.hadoop.hbase.Cell)">
<h3>isMetaEditFamily</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-236">isMetaEditFamily</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span></div>
<div class="block">Replaying WALs can read Cell-at-a-time so need this method in those cases.</div>
</section>
</li>
<li>
<section class="detail" id="isMetaEdit()">
<h3>isMetaEdit</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-244">isMetaEdit</a></span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>True if this is a meta edit; has one edit only and its columnfamily is
<a href="#METAFAMILY"><code>METAFAMILY</code></a>.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isReplay()">
<h3>isReplay</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-252">isReplay</a></span>()</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>True when current WALEdit is created by log replay. Replication skips WALEdits from
replay.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="add(org.apache.hadoop.hbase.Cell,byte[])">
<h3>add</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-256">add</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell,
byte[]&nbsp;family)</span></div>
</section>
</li>
<li>
<section class="detail" id="add(org.apache.hadoop.hbase.Cell)">
<h3>add</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-262">add</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span></div>
</section>
</li>
<li>
<section class="detail" id="add(java.util.List)">
<h3>add</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-269">add</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;? extends <a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells)</span></div>
</section>
</li>
<li>
<section class="detail" id="isEmpty()">
<h3>isEmpty</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-280">isEmpty</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="size()">
<h3>size</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-284">size</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="getCells()">
<h3>getCells</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-288">getCells</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="setCells(java.util.ArrayList)">
<h3>setCells</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-297">setCells</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/ArrayList.html" title="class or interface in java.util" class="external-link">ArrayList</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&nbsp;cells)</span></div>
<div class="block">This is not thread safe. This will change the WALEdit and shouldn't be used unless you are sure
that nothing else depends on the contents being immutable.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>cells</code> - the list of cells that this WALEdit now contains.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="readFromCells(org.apache.hadoop.hbase.codec.Codec.Decoder,int)">
<h3>readFromCells</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">int</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-310">readFromCells</a></span><wbr><span class="parameters">(<a href="../codec/Codec.Decoder.html" title="interface in org.apache.hadoop.hbase.codec">Codec.Decoder</a>&nbsp;cellDecoder,
int&nbsp;expectedCount)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<div class="block">Reads WALEdit from cells.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>cellDecoder</code> - Cell decoder.</dd>
<dd><code>expectedCount</code> - Expected cell count.</dd>
<dt>Returns:</dt>
<dd>Number of KVs read.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="heapSize()">
<h3>heapSize</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-319">heapSize</a></span>()</div>
<div class="block"><span class="descfrm-type-label">Description copied from interface:&nbsp;<code><a href="../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 class="notes">
<dt>Specified by:</dt>
<dd><code><a href="../io/HeapSize.html#heapSize()">heapSize</a></code>&nbsp;in interface&nbsp;<code><a href="../io/HeapSize.html" title="interface in org.apache.hadoop.hbase.io">HeapSize</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="estimatedSerializedSizeOf()">
<h3>estimatedSerializedSizeOf</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">long</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-328">estimatedSerializedSizeOf</a></span>()</div>
</section>
</li>
<li>
<section class="detail" id="toString()">
<h3>toString</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/String.html" title="class or interface in java.lang" class="external-link">String</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-336">toString</a></span>()</div>
<dl class="notes">
<dt>Overrides:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html#toString()" title="class or interface in java.lang" class="external-link">toString</a></code>&nbsp;in class&nbsp;<code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/lang/Object.html" title="class or interface in java.lang" class="external-link">Object</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createFlushWALEdit(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor)">
<h3>createFlushWALEdit</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-349">createFlushWALEdit</a></span><wbr><span class="parameters">(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor&nbsp;f)</span></div>
</section>
</li>
<li>
<section class="detail" id="getFlushDescriptor(org.apache.hadoop.hbase.Cell)">
<h3>getFlushDescriptor</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.FlushDescriptor</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-355">getFlushDescriptor</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createRegionEventWALEdit(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor)">
<h3>createRegionEventWALEdit</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-368">createRegionEventWALEdit</a></span><wbr><span class="parameters">(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor&nbsp;regionEventDesc)</span></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>A meta Marker WALEdit that has a single Cell whose value is the passed in
<code>regionEventDesc</code> serialized and whose row is this region, columnfamily is
<a href="#METAFAMILY"><code>METAFAMILY</code></a> and qualifier is <a href="#REGION_EVENT_PREFIX"><code>REGION_EVENT_PREFIX</code></a> +
<code>WALProtos.RegionEventDescriptor.getEventType()</code>; for example
HBASE::REGION_EVENT::REGION_CLOSE.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createRegionEventWALEdit(byte[],org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor)">
<h3>createRegionEventWALEdit</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-373">createRegionEventWALEdit</a></span><wbr><span class="parameters">(byte[]&nbsp;rowForRegion,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor&nbsp;regionEventDesc)</span></div>
</section>
</li>
<li>
<section class="detail" id="createRegionEventDescriptorQualifier(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor.EventType)">
<h3>createRegionEventDescriptorQualifier</h3>
<div class="member-signature"><span class="annotations">@Private
</span><span class="modifiers">public static</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-386">createRegionEventDescriptorQualifier</a></span><wbr><span class="parameters">(org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor.EventType&nbsp;t)</span></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>Cell qualifier for the passed in RegionEventDescriptor Type; e.g. we'll return
something like a byte array with HBASE::REGION_EVENT::REGION_OPEN in it.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isRegionCloseMarker()">
<h3>isRegionCloseMarker</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-395">isRegionCloseMarker</a></span>()</div>
<div class="block">Public so can be accessed from regionserver.wal package.</div>
<dl class="notes">
<dt>Returns:</dt>
<dd>True if this is a Marker Edit and it is a RegionClose type.</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getRegionEventDescriptor(org.apache.hadoop.hbase.Cell)">
<h3>getRegionEventDescriptor</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.RegionEventDescriptor</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-404">getRegionEventDescriptor</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<dl class="notes">
<dt>Returns:</dt>
<dd>Returns a RegionEventDescriptor made by deserializing the content of the passed in
<code>cell</code>, IFF the <code>cell</code> is a RegionEventDescriptor type WALEdit.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createCompaction(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor)">
<h3>createCompaction</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-411">createCompaction</a></span><wbr><span class="parameters">(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor&nbsp;c)</span></div>
<div class="block">Returns A Marker WALEdit that has <code>c</code> serialized as its value</div>
</section>
</li>
<li>
<section class="detail" id="getRowForRegion(org.apache.hadoop.hbase.client.RegionInfo)">
<h3>getRowForRegion</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">byte[]</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-418">getRowForRegion</a></span><wbr><span class="parameters">(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri)</span></div>
</section>
</li>
<li>
<section class="detail" id="getCompaction(org.apache.hadoop.hbase.Cell)">
<h3>getCompaction</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.CompactionDescriptor</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-433">getCompaction</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;kv)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<div class="block">Deserialized and returns a CompactionDescriptor is the KeyValue contains one.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>kv</code> - the key value</dd>
<dt>Returns:</dt>
<dd>deserialized CompactionDescriptor or null.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isCompactionMarker(org.apache.hadoop.hbase.Cell)">
<h3>isCompactionMarker</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-441">isCompactionMarker</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span></div>
<div class="block">Returns true if the given cell is a serialized <code>WALProtos.CompactionDescriptor</code></div>
<dl class="notes">
<dt>See Also:</dt>
<dd>
<ul class="see-list">
<li><a href="#getCompaction(org.apache.hadoop.hbase.Cell)"><code>getCompaction(Cell)</code></a></li>
</ul>
</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="createBulkLoadEvent(org.apache.hadoop.hbase.client.RegionInfo,org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor)">
<h3>createBulkLoadEvent</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-451">createBulkLoadEvent</a></span><wbr><span class="parameters">(<a href="../client/RegionInfo.html" title="interface in org.apache.hadoop.hbase.client">RegionInfo</a>&nbsp;hri,
org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor&nbsp;bulkLoadDescriptor)</span></div>
<div class="block">Create a bulk loader WALEdit</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>hri</code> - The RegionInfo for the region in which we are bulk loading</dd>
<dd><code>bulkLoadDescriptor</code> - The descriptor for the Bulk Loader</dd>
<dt>Returns:</dt>
<dd>The WALEdit for the BulkLoad</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="getBulkLoadDescriptor(org.apache.hadoop.hbase.Cell)">
<h3>getBulkLoadDescriptor</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">org.apache.hadoop.hbase.shaded.protobuf.generated.WALProtos.BulkLoadDescriptor</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-463">getBulkLoadDescriptor</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span>
throws <span class="exceptions"><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></span></div>
<div class="block">Deserialized and returns a BulkLoadDescriptor from the passed in Cell</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>cell</code> - the key value</dd>
<dt>Returns:</dt>
<dd>deserialized BulkLoadDescriptor or null.</dd>
<dt>Throws:</dt>
<dd><code><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/io/IOException.html" title="class or interface in java.io" class="external-link">IOException</a></code></dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="add(java.util.Map)">
<h3>add</h3>
<div class="member-signature"><span class="modifiers">public</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-476">add</a></span><wbr><span class="parameters">(<a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/Map.html" title="class or interface in java.util" class="external-link">Map</a>&lt;byte[],<wbr><a href="https://docs.oracle.com/en/java/javase/17/docs/api/java.base/java/util/List.html" title="class or interface in java.util" class="external-link">List</a>&lt;<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&gt;&gt;&nbsp;familyMap)</span></div>
<div class="block">Append the given map of family->edits to a WALEdit data structure. This does not write to the
WAL itself. Note that as an optimization, we will stamp the Set of column families into the
WALEdit to save on our having to calculate column families subsequently down in the actual WAL
writing.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>familyMap</code> - map of family->edits</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="addFamily(byte[])">
<h3>addFamily</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type">void</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-489">addFamily</a></span><wbr><span class="parameters">(byte[]&nbsp;family)</span></div>
</section>
</li>
<li>
<section class="detail" id="addCell(org.apache.hadoop.hbase.Cell)">
<h3>addCell</h3>
<div class="member-signature"><span class="modifiers">private</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-493">addCell</a></span><wbr><span class="parameters">(<a href="../Cell.html" title="interface in org.apache.hadoop.hbase">Cell</a>&nbsp;cell)</span></div>
</section>
</li>
<li>
<section class="detail" id="createReplicationMarkerEdit(byte[],long)">
<h3>createReplicationMarkerEdit</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type"><a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a></span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-504">createReplicationMarkerEdit</a></span><wbr><span class="parameters">(byte[]&nbsp;rowKey,
long&nbsp;timestamp)</span></div>
<div class="block">Creates a replication tracker edit with <a href="#METAFAMILY"><code>METAFAMILY</code></a> family and
<a href="#REPLICATION_MARKER"><code>REPLICATION_MARKER</code></a> qualifier and has null value.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>rowKey</code> - rowkey</dd>
<dd><code>timestamp</code> - timestamp</dd>
</dl>
</section>
</li>
<li>
<section class="detail" id="isReplicationMarkerEdit(org.apache.hadoop.hbase.wal.WALEdit)">
<h3>isReplicationMarkerEdit</h3>
<div class="member-signature"><span class="modifiers">public static</span>&nbsp;<span class="return-type">boolean</span>&nbsp;<span class="element-name"><a href="../../../../../src-html/org/apache/hadoop/hbase/wal/WALEdit.html#line-516">isReplicationMarkerEdit</a></span><wbr><span class="parameters">(<a href="WALEdit.html" title="class in org.apache.hadoop.hbase.wal">WALEdit</a>&nbsp;edit)</span></div>
<div class="block">Checks whether this edit is a replication marker edit.</div>
<dl class="notes">
<dt>Parameters:</dt>
<dd><code>edit</code> - edit</dd>
<dt>Returns:</dt>
<dd>true if the cell within an edit has column = METAFAMILY and qualifier =
REPLICATION_MARKER, false otherwise</dd>
</dl>
</section>
</li>
</ul>
</section>
</li>
</ul>
</section>
<!-- ========= END OF CLASS DATA ========= -->
</main>
<footer role="contentinfo">
<hr>
<p class="legal-copy"><small>Copyright &#169; 2007&#x2013;2020 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</div>
</div>
</body>
</html>