<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>BaseOverwriteFiles</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../jquery/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="../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../jquery/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="../../../jquery/jquery-ui.min.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="BaseOverwriteFiles";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":42,"i4":10,"i5":10,"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":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"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":10,"i46":10,"i47":10,"i48":10,"i49":10,"i50":10,"i51":42,"i52":10,"i53":42,"i54":10,"i55":10,"i56":42,"i57":10,"i58":42,"i59":10,"i60":42,"i61":10,"i62":10,"i63":10,"i64":10,"i65":42,"i66":10,"i67":42,"i68":10,"i69":42,"i70":10,"i71":42,"i72":10,"i73":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</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" id="allclasses_navbar_top">
<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">org.apache.iceberg</a></div>
<h2 title="Class BaseOverwriteFiles" class="title">Class BaseOverwriteFiles</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.iceberg.BaseOverwriteFiles</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code>, <code><a href="PendingUpdate.html" title="interface in org.apache.iceberg">PendingUpdate</a>&lt;<a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;</code>, <code><a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a>&lt;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&gt;</code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">BaseOverwriteFiles</span>
extends java.lang.Object
implements <a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section>
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier</th>
<th class="colSecond" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected </code></td>
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(java.lang.String,org.apache.iceberg.TableOperations)">BaseOverwriteFiles</a></span>&#8203;(java.lang.String&nbsp;tableName,
                  <a href="TableOperations.html" title="interface in org.apache.iceberg">TableOperations</a>&nbsp;ops)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section>
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.apache.iceberg.DataFile)">add</a></span>&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Add a data file to the new snapshot.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.apache.iceberg.DeleteFile)">add</a></span>&#8203;(<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Add a delete file to the new snapshot.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#add(org.apache.iceberg.ManifestFile)">add</a></span>&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</code></th>
<td class="colLast">
<div class="block">Add all files in a manifest to the new snapshot.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected org.apache.iceberg.DeleteFileIndex</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addedDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.util.PartitionSet)">addedDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                java.lang.Long&nbsp;startingSnapshotId,
                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.addedDeleteFiles(TableMetadata, Long, Expression, PartitionSet,
     Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected org.apache.iceberg.DeleteFileIndex</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addedDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">addedDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                java.lang.Long&nbsp;startingSnapshotId,
                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Returns matching delete files have been added to the table since a starting snapshot.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected java.util.List&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addedFiles()">addedFiles</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#addFile(org.apache.iceberg.DataFile)">addFile</a></span>&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Add a <a href="DataFile.html" title="interface in org.apache.iceberg"><code>DataFile</code></a> to the table.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code><a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#apply()">apply</a></span>()</code></th>
<td class="colLast">
<div class="block">Apply the pending changes and return the uncommitted changes for validation.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#apply(org.apache.iceberg.TableMetadata,org.apache.iceberg.Snapshot)">apply</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
     <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;snapshot)</code></th>
<td class="colLast">
<div class="block">Apply the update's changes to the given metadata and snapshot.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#caseSensitive(boolean)">caseSensitive</a></span>&#8203;(boolean&nbsp;isCaseSensitive)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#cleanAll()">cleanAll</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#cleanUncommitted(java.util.Set)">cleanUncommitted</a></span>&#8203;(java.util.Set&lt;<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&gt;&nbsp;committed)</code></th>
<td class="colLast">
<div class="block">Clean up any uncommitted manifests that were created.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#commit()">commit</a></span>()</code></th>
<td class="colLast">
<div class="block">Apply the pending changes and commit.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="metrics/CommitMetrics.html" title="class in org.apache.iceberg.metrics">CommitMetrics</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#commitMetrics()">commitMetrics</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#conflictDetectionFilter(org.apache.iceberg.expressions.Expression)">conflictDetectionFilter</a></span>&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;newConflictDetectionFilter)</code></th>
<td class="colLast">
<div class="block">Sets a conflict detection filter used to validate concurrently added data and delete files.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>protected <a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#current()">current</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected <a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dataSpec()">dataSpec</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#delete(java.lang.CharSequence)">delete</a></span>&#8203;(java.lang.CharSequence&nbsp;path)</code></th>
<td class="colLast">
<div class="block">Add a specific data path to be deleted in the new snapshot.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#delete(org.apache.iceberg.DataFile)">delete</a></span>&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Add a specific data file to be deleted in the new snapshot.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#delete(org.apache.iceberg.DeleteFile)">delete</a></span>&#8203;(<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Add a specific delete file to be deleted in the new snapshot.</div>
</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteByRowFilter(org.apache.iceberg.expressions.Expression)">deleteByRowFilter</a></span>&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;expr)</code></th>
<td class="colLast">
<div class="block">Add a filter to match files to delete.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteFile(java.lang.String)">deleteFile</a></span>&#8203;(java.lang.String&nbsp;path)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteFile(org.apache.iceberg.DataFile)">deleteFile</a></span>&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</code></th>
<td class="colLast">
<div class="block">Delete a <a href="DataFile.html" title="interface in org.apache.iceberg"><code>DataFile</code></a> from the table.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#deleteWith(java.util.function.Consumer)">deleteWith</a></span>&#8203;(java.util.function.Consumer&lt;java.lang.String&gt;&nbsp;deleteCallback)</code></th>
<td class="colLast">
<div class="block">Set a callback to delete files instead of the table's default.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dropPartition(int,org.apache.iceberg.StructLike)">dropPartition</a></span>&#8203;(int&nbsp;specId,
             <a href="StructLike.html" title="interface in org.apache.iceberg">StructLike</a>&nbsp;partition)</code></th>
<td class="colLast">
<div class="block">Add a partition tuple to drop from the table during the delete phase.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#failAnyDelete()">failAnyDelete</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#failMissingDeletePaths()">failMissingDeletePaths</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCaseSensitive()">isCaseSensitive</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected <a href="io/OutputFile.html" title="interface in org.apache.iceberg.io">OutputFile</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#manifestListPath()">manifestListPath</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>protected <a href="ManifestReader.html" title="class in org.apache.iceberg">ManifestReader</a>&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDeleteManifestReader(org.apache.iceberg.ManifestFile)">newDeleteManifestReader</a></span>&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>protected <a href="ManifestWriter.html" title="class in org.apache.iceberg">ManifestWriter</a>&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newDeleteManifestWriter(org.apache.iceberg.PartitionSpec)">newDeleteManifestWriter</a></span>&#8203;(<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;spec)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>protected <a href="io/OutputFile.html" title="interface in org.apache.iceberg.io">OutputFile</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newManifestOutput()">newManifestOutput</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>protected <a href="ManifestReader.html" title="class in org.apache.iceberg">ManifestReader</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newManifestReader(org.apache.iceberg.ManifestFile)">newManifestReader</a></span>&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>protected <a href="ManifestWriter.html" title="class in org.apache.iceberg">ManifestWriter</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newManifestWriter(org.apache.iceberg.PartitionSpec)">newManifestWriter</a></span>&#8203;(<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;spec)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#operation()">operation</a></span>()</code></th>
<td class="colLast">
<div class="block">A string that describes the action that produced the new snapshot.</div>
</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#overwriteByRowFilter(org.apache.iceberg.expressions.Expression)">overwriteByRowFilter</a></span>&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;expr)</code></th>
<td class="colLast">
<div class="block">Delete files that match an <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a> on data rows from the table.</div>
</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>protected <a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#refresh()">refresh</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>protected ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#reportWith(org.apache.iceberg.metrics.MetricsReporter)">reportWith</a></span>&#8203;(<a href="metrics/MetricsReporter.html" title="interface in org.apache.iceberg.metrics">MetricsReporter</a>&nbsp;newReporter)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>protected <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#rowFilter()">rowFilter</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i39" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#scanManifestsWith(java.util.concurrent.ExecutorService)">scanManifestsWith</a></span>&#8203;(java.util.concurrent.ExecutorService&nbsp;executorService)</code></th>
<td class="colLast">
<div class="block">Use a particular executor to scan manifests.</div>
</td>
</tr>
<tr id="i40" class="altColor">
<td class="colFirst"><code>protected <a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#self()">self</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i41" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#set(java.lang.String,java.lang.String)">set</a></span>&#8203;(java.lang.String&nbsp;property,
   java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Set a summary property in the snapshot produced by this update.</div>
</td>
</tr>
<tr id="i42" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setNewFilesSequenceNumber(long)">setNewFilesSequenceNumber</a></span>&#8203;(long&nbsp;sequenceNumber)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i43" class="rowColor">
<td class="colFirst"><code>protected long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#snapshotId()">snapshotId</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i44" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#stageOnly()">stageOnly</a></span>()</code></th>
<td class="colLast">
<div class="block">Called to stage a snapshot in table metadata, but not update the current snapshot id.</div>
</td>
</tr>
<tr id="i45" class="rowColor">
<td class="colFirst"><code>protected java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#summary()">summary</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i46" class="altColor">
<td class="colFirst"><code>protected java.lang.String</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#targetBranch()">targetBranch</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i47" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#targetBranch(java.lang.String)">targetBranch</a></span>&#8203;(java.lang.String&nbsp;branch)</code></th>
<td class="colLast">
<div class="block">* A setter for the target branch on which snapshot producer operation should be performed</div>
</td>
</tr>
<tr id="i48" class="altColor">
<td class="colFirst"><code><a href="BaseOverwriteFiles.html" title="class in org.apache.iceberg">BaseOverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#toBranch(java.lang.String)">toBranch</a></span>&#8203;(java.lang.String&nbsp;branch)</code></th>
<td class="colLast">
<div class="block">Perform operations on a particular branch</div>
</td>
</tr>
<tr id="i49" class="rowColor">
<td class="colFirst"><code>java.lang.Object</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#updateEvent()">updateEvent</a></span>()</code></th>
<td class="colLast">
<div class="block">Generates update event to notify about metadata changes</div>
</td>
</tr>
<tr id="i50" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validate(org.apache.iceberg.TableMetadata,org.apache.iceberg.Snapshot)">validate</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validate the current metadata.</div>
</td>
</tr>
<tr id="i51" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">validateAddedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateAddedDataFiles(TableMetadata, Long, Expression, Snapshot)</code>
     instead</div>
</div>
</td>
</tr>
<tr id="i52" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">validateAddedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter,
                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no files matching a filter have been added to the table since a starting
 snapshot.</div>
</td>
</tr>
<tr id="i53" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">validateAddedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateAddedDataFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i54" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">validateAddedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no files matching given partitions have been added to the table since a starting
 snapshot.</div>
</td>
</tr>
<tr id="i55" class="rowColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateAddedFilesMatchOverwriteFilter()">validateAddedFilesMatchOverwriteFilter</a></span>()</code></th>
<td class="colLast">
<div class="block">Signal that each file added to the table must match the overwrite expression.</div>
</td>
</tr>
<tr id="i56" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDataFilesExist(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.CharSequenceSet,boolean,org.apache.iceberg.expressions.Expression)">validateDataFilesExist</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="util/CharSequenceSet.html" title="class in org.apache.iceberg.util">CharSequenceSet</a>&nbsp;requiredDataFiles,
                      boolean&nbsp;skipDeletes,
                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span></div>
</td>
</tr>
<tr id="i57" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDataFilesExist(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.CharSequenceSet,boolean,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">validateDataFilesExist</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                      java.lang.Long&nbsp;startingSnapshotId,
                      <a href="util/CharSequenceSet.html" title="class in org.apache.iceberg.util">CharSequenceSet</a>&nbsp;requiredDataFiles,
                      boolean&nbsp;skipDeletes,
                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter,
                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i58" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">validateDeletedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateDeletedDataFiles(TableMetadata, Long, Expression,
     Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i59" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">validateDeletedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
</td>
</tr>
<tr id="i60" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">validateDeletedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i61" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">validateDeletedDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
</td>
</tr>
<tr id="i62" class="altColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateFromSnapshot(long)">validateFromSnapshot</a></span>&#8203;(long&nbsp;snapshotId)</code></th>
<td class="colLast">
<div class="block">Set the snapshot ID used in any reads for this operation.</div>
</td>
</tr>
<tr id="i63" class="rowColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoConflictingData()">validateNoConflictingData</a></span>()</code></th>
<td class="colLast">
<div class="block">Enables validation that data added concurrently does not conflict with this commit's operation.</div>
</td>
</tr>
<tr id="i64" class="altColor">
<td class="colFirst"><code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoConflictingDeletes()">validateNoConflictingDeletes</a></span>()</code></th>
<td class="colLast">
<div class="block">Enables validation that deletes that happened concurrently do not conflict with this commit's
 operation.</div>
</td>
</tr>
<tr id="i65" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">validateNoNewDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata, java.lang.Long, org.apache.iceberg.expressions.Expression)</code> instead</div>
</div>
</td>
</tr>
<tr id="i66" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">validateNoNewDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no delete files matching a filter have been added to the table since a starting
 snapshot.</div>
</td>
</tr>
<tr id="i67" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">validateNoNewDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i68" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">validateNoNewDeleteFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        java.lang.Long&nbsp;startingSnapshotId,
                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no delete files matching a partition set have been added to the table since a
 starting snapshot.</div>
</td>
</tr>
<tr id="i69" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,java.lang.Iterable)">validateNoNewDeletesForDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                java.lang.Long&nbsp;startingSnapshotId,
                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata, java.lang.Long, java.lang.Iterable&lt;org.apache.iceberg.DataFile&gt;, org.apache.iceberg.Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i70" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,java.lang.Iterable,org.apache.iceberg.Snapshot)">validateNoNewDeletesForDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                java.lang.Long&nbsp;startingSnapshotId,
                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles,
                                <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
</td>
</tr>
<tr id="i71" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,java.lang.Iterable)">validateNoNewDeletesForDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                java.lang.Long&nbsp;startingSnapshotId,
                                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles)</code></th>
<td class="colLast">
<div class="block"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata, java.lang.Long, java.lang.Iterable&lt;org.apache.iceberg.DataFile&gt;, org.apache.iceberg.Snapshot)</code> instead</div>
</div>
</td>
</tr>
<tr id="i72" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,java.lang.Iterable,org.apache.iceberg.Snapshot)">validateNoNewDeletesForDataFiles</a></span>&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                java.lang.Long&nbsp;startingSnapshotId,
                                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles,
                                <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
</td>
</tr>
<tr id="i73" class="rowColor">
<td class="colFirst"><code>protected java.util.concurrent.ExecutorService</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#workerPool()">workerPool</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.OverwriteFiles">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></h3>
<code><a href="OverwriteFiles.html#caseSensitive(boolean)">caseSensitive</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.PendingUpdate">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="PendingUpdate.html" title="interface in org.apache.iceberg">PendingUpdate</a></h3>
<code><a href="PendingUpdate.html#apply()">apply</a>, <a href="PendingUpdate.html#commit()">commit</a>, <a href="PendingUpdate.html#updateEvent()">updateEvent</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.SnapshotUpdate">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a></h3>
<code><a href="SnapshotUpdate.html#deleteWith(java.util.function.Consumer)">deleteWith</a>, <a href="SnapshotUpdate.html#scanManifestsWith(java.util.concurrent.ExecutorService)">scanManifestsWith</a>, <a href="SnapshotUpdate.html#set(java.lang.String,java.lang.String)">set</a>, <a href="SnapshotUpdate.html#stageOnly()">stageOnly</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section>
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(java.lang.String,org.apache.iceberg.TableOperations)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>BaseOverwriteFiles</h4>
<pre>protected&nbsp;BaseOverwriteFiles&#8203;(java.lang.String&nbsp;tableName,
                             <a href="TableOperations.html" title="interface in org.apache.iceberg">TableOperations</a>&nbsp;ops)</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section>
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="self()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>self</h4>
<pre class="methodSignature">protected&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;self()</pre>
</li>
</ul>
<a id="operation()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>operation</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;operation()</pre>
<div class="block">A string that describes the action that produced the new snapshot.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a string operation</dd>
</dl>
</li>
</ul>
<a id="overwriteByRowFilter(org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>overwriteByRowFilter</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;overwriteByRowFilter&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;expr)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#overwriteByRowFilter(org.apache.iceberg.expressions.Expression)">OverwriteFiles</a></code></span></div>
<div class="block">Delete files that match an <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a> on data rows from the table.

 <p>A file is selected to be deleted by the expression if it could contain any rows that match
 the expression (candidate files are selected using an <a href="expressions/Projections.html#inclusive(org.apache.iceberg.PartitionSpec)"><code>inclusive projection</code></a>). These candidate files are deleted
 if all of the rows in the file must match the expression (the partition data matches the
 expression's <a href="expressions/Projections.html#strict(org.apache.iceberg.PartitionSpec)"><code>Projections.strict(PartitionSpec)</code></a> strict projection}). This guarantees
 that files are deleted if and only if all rows in the file must match the expression.

 <p>Files that may contain some rows that match the expression and some rows that do not will
 result in a <a href="exceptions/ValidationException.html" title="class in org.apache.iceberg.exceptions"><code>ValidationException</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#overwriteByRowFilter(org.apache.iceberg.expressions.Expression)">overwriteByRowFilter</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expr</code> - an expression on rows in the table</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="addFile(org.apache.iceberg.DataFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addFile</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;addFile&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#addFile(org.apache.iceberg.DataFile)">OverwriteFiles</a></code></span></div>
<div class="block">Add a <a href="DataFile.html" title="interface in org.apache.iceberg"><code>DataFile</code></a> to the table.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#addFile(org.apache.iceberg.DataFile)">addFile</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>file</code> - a data file</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="deleteFile(org.apache.iceberg.DataFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteFile</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;deleteFile&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#deleteFile(org.apache.iceberg.DataFile)">OverwriteFiles</a></code></span></div>
<div class="block">Delete a <a href="DataFile.html" title="interface in org.apache.iceberg"><code>DataFile</code></a> from the table.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#deleteFile(org.apache.iceberg.DataFile)">deleteFile</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>file</code> - a data file</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="validateAddedFilesMatchOverwriteFilter()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAddedFilesMatchOverwriteFilter</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;validateAddedFilesMatchOverwriteFilter()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#validateAddedFilesMatchOverwriteFilter()">OverwriteFiles</a></code></span></div>
<div class="block">Signal that each file added to the table must match the overwrite expression.

 <p>If this method is called, each added file is validated on commit to ensure that it matches
 the overwrite row filter. This is used to ensure that writes are idempotent: that files cannot
 be added during a commit that would not be removed if the operation were run a second time.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#validateAddedFilesMatchOverwriteFilter()">validateAddedFilesMatchOverwriteFilter</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="validateFromSnapshot(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateFromSnapshot</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;validateFromSnapshot&#8203;(long&nbsp;snapshotId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#validateFromSnapshot(long)">OverwriteFiles</a></code></span></div>
<div class="block">Set the snapshot ID used in any reads for this operation.

 <p>Validations will check changes after this snapshot ID. If the from snapshot is not set, all
 ancestor snapshots through the table's initial snapshot are validated.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#validateFromSnapshot(long)">validateFromSnapshot</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>snapshotId</code> - a snapshot ID</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="conflictDetectionFilter(org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>conflictDetectionFilter</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;conflictDetectionFilter&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;newConflictDetectionFilter)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#conflictDetectionFilter(org.apache.iceberg.expressions.Expression)">OverwriteFiles</a></code></span></div>
<div class="block">Sets a conflict detection filter used to validate concurrently added data and delete files.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#conflictDetectionFilter(org.apache.iceberg.expressions.Expression)">conflictDetectionFilter</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>newConflictDetectionFilter</code> - an expression on rows in the table</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="validateNoConflictingData()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoConflictingData</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;validateNoConflictingData()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#validateNoConflictingData()">OverwriteFiles</a></code></span></div>
<div class="block">Enables validation that data added concurrently does not conflict with this commit's operation.

 <p>This method should be called while committing non-idempotent overwrite operations. If a
 concurrent operation commits a new file after the data was read and that file might contain
 rows matching the specified conflict detection filter, the overwrite operation will detect this
 and fail.

 <p>Calling this method with a correct conflict detection filter is required to maintain
 isolation for non-idempotent overwrite operations.

 <p>Validation uses the conflict detection filter passed to <a href="OverwriteFiles.html#conflictDetectionFilter(org.apache.iceberg.expressions.Expression)"><code>OverwriteFiles.conflictDetectionFilter(Expression)</code></a> and applies to operations that happened after the
 snapshot passed to <a href="OverwriteFiles.html#validateFromSnapshot(long)"><code>OverwriteFiles.validateFromSnapshot(long)</code></a>. If the conflict detection filter is not
 set, any new data added concurrently will fail this overwrite operation.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#validateNoConflictingData()">validateNoConflictingData</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="validateNoConflictingDeletes()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoConflictingDeletes</h4>
<pre class="methodSignature">public&nbsp;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&nbsp;validateNoConflictingDeletes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="OverwriteFiles.html#validateNoConflictingDeletes()">OverwriteFiles</a></code></span></div>
<div class="block">Enables validation that deletes that happened concurrently do not conflict with this commit's
 operation.

 <p>Validating concurrent deletes is required during non-idempotent overwrite operations. If a
 concurrent operation deletes data in one of the files being overwritten, the overwrite
 operation must be aborted as it may undelete rows that were removed concurrently.

 <p>Calling this method with a correct conflict detection filter is required to maintain
 isolation for non-idempotent overwrite operations.

 <p>Validation uses the conflict detection filter passed to <a href="OverwriteFiles.html#conflictDetectionFilter(org.apache.iceberg.expressions.Expression)"><code>OverwriteFiles.conflictDetectionFilter(Expression)</code></a> and applies to operations that happened after the
 snapshot passed to <a href="OverwriteFiles.html#validateFromSnapshot(long)"><code>OverwriteFiles.validateFromSnapshot(long)</code></a>. If the conflict detection filter is not
 set, this operation will use the row filter provided in <a href="OverwriteFiles.html#overwriteByRowFilter(org.apache.iceberg.expressions.Expression)"><code>OverwriteFiles.overwriteByRowFilter(Expression)</code></a> to check for new delete files and will ensure there are no
 conflicting deletes for data files removed via <a href="OverwriteFiles.html#deleteFile(org.apache.iceberg.DataFile)"><code>OverwriteFiles.deleteFile(DataFile)</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="OverwriteFiles.html#validateNoConflictingDeletes()">validateNoConflictingDeletes</a></code>&nbsp;in interface&nbsp;<code><a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="toBranch(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>toBranch</h4>
<pre class="methodSignature">public&nbsp;<a href="BaseOverwriteFiles.html" title="class in org.apache.iceberg">BaseOverwriteFiles</a>&nbsp;toBranch&#8203;(java.lang.String&nbsp;branch)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SnapshotUpdate.html#toBranch(java.lang.String)">SnapshotUpdate</a></code></span></div>
<div class="block">Perform operations on a particular branch</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SnapshotUpdate.html#toBranch(java.lang.String)">toBranch</a></code>&nbsp;in interface&nbsp;<code><a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a>&lt;<a href="OverwriteFiles.html" title="interface in org.apache.iceberg">OverwriteFiles</a>&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>branch</code> - which is name of SnapshotRef of type branch.</dd>
</dl>
</li>
</ul>
<a id="validate(org.apache.iceberg.TableMetadata,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validate</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validate&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validate the current metadata.

 <p>Child operations can override this to add custom validation.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - current table metadata to validate</dd>
<dd><code>parent</code> - ending snapshot on the lineage which is being validated</dd>
</dl>
</li>
</ul>
<a id="set(java.lang.String,java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>set</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;set&#8203;(java.lang.String&nbsp;property,
                 java.lang.String&nbsp;value)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SnapshotUpdate.html#set(java.lang.String,java.lang.String)">SnapshotUpdate</a></code></span></div>
<div class="block">Set a summary property in the snapshot produced by this update.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>property</code> - a String property name</dd>
<dd><code>value</code> - a String property value</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="caseSensitive(boolean)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>caseSensitive</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;caseSensitive&#8203;(boolean&nbsp;isCaseSensitive)</pre>
</li>
</ul>
<a id="isCaseSensitive()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCaseSensitive</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;isCaseSensitive()</pre>
</li>
</ul>
<a id="dataSpec()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dataSpec</h4>
<pre class="methodSignature">protected&nbsp;<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;dataSpec()</pre>
</li>
</ul>
<a id="rowFilter()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>rowFilter</h4>
<pre class="methodSignature">protected&nbsp;<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;rowFilter()</pre>
</li>
</ul>
<a id="addedFiles()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addedFiles</h4>
<pre class="methodSignature">protected&nbsp;java.util.List&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;addedFiles()</pre>
</li>
</ul>
<a id="failAnyDelete()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>failAnyDelete</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;failAnyDelete()</pre>
</li>
</ul>
<a id="failMissingDeletePaths()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>failMissingDeletePaths</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;failMissingDeletePaths()</pre>
</li>
</ul>
<a id="deleteByRowFilter(org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteByRowFilter</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;deleteByRowFilter&#8203;(<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;expr)</pre>
<div class="block">Add a filter to match files to delete. A file will be deleted if all of the rows it contains
 match this or any other filter passed to this method.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expr</code> - an expression to match rows.</dd>
</dl>
</li>
</ul>
<a id="dropPartition(int,org.apache.iceberg.StructLike)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dropPartition</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;dropPartition&#8203;(int&nbsp;specId,
                             <a href="StructLike.html" title="interface in org.apache.iceberg">StructLike</a>&nbsp;partition)</pre>
<div class="block">Add a partition tuple to drop from the table during the delete phase.</div>
</li>
</ul>
<a id="delete(org.apache.iceberg.DataFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;delete&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</pre>
<div class="block">Add a specific data file to be deleted in the new snapshot.</div>
</li>
</ul>
<a id="delete(org.apache.iceberg.DeleteFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;delete&#8203;(<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&nbsp;file)</pre>
<div class="block">Add a specific delete file to be deleted in the new snapshot.</div>
</li>
</ul>
<a id="delete(java.lang.CharSequence)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>delete</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;delete&#8203;(java.lang.CharSequence&nbsp;path)</pre>
<div class="block">Add a specific data path to be deleted in the new snapshot.</div>
</li>
</ul>
<a id="add(org.apache.iceberg.DataFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;add&#8203;(<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&nbsp;file)</pre>
<div class="block">Add a data file to the new snapshot.</div>
</li>
</ul>
<a id="add(org.apache.iceberg.DeleteFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;add&#8203;(<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&nbsp;file)</pre>
<div class="block">Add a delete file to the new snapshot.</div>
</li>
</ul>
<a id="add(org.apache.iceberg.ManifestFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>add</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;add&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</pre>
<div class="block">Add all files in a manifest to the new snapshot.</div>
</li>
</ul>
<a id="validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAddedDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateAddedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateAddedDataFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a set of partitions to filter new conflicting data files</dd>
</dl>
</li>
</ul>
<a id="validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAddedDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateAddedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no files matching given partitions have been added to the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a set of partitions to filter new conflicting data files</dd>
<dd><code>parent</code> - ending snapshot on the lineage being validated</dd>
</dl>
</li>
</ul>
<a id="validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAddedDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateAddedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateAddedDataFiles(TableMetadata, Long, Expression, Snapshot)</code>
     instead</div>
</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>conflictDetectionFilter</code> - an expression used to find new conflicting data files</dd>
</dl>
</li>
</ul>
<a id="validateAddedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateAddedDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateAddedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter,
                                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no files matching a filter have been added to the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>conflictDetectionFilter</code> - an expression used to find new conflicting data files</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,java.lang.Iterable,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeletesForDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateNoNewDeletesForDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                java.lang.Long&nbsp;startingSnapshotId,
                                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles,
                                                <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFiles</code> - data files to validate have no new row deletes</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,java.lang.Iterable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeletesForDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateNoNewDeletesForDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                java.lang.Long&nbsp;startingSnapshotId,
                                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata, java.lang.Long, java.lang.Iterable&lt;org.apache.iceberg.DataFile&gt;, org.apache.iceberg.Snapshot)</code> instead</div>
</div>
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFiles</code> - data files to validate have no new row deletes</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,java.lang.Iterable)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeletesForDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateNoNewDeletesForDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                java.lang.Long&nbsp;startingSnapshotId,
                                                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata, java.lang.Long, java.lang.Iterable&lt;org.apache.iceberg.DataFile&gt;, org.apache.iceberg.Snapshot)</code> instead</div>
</div>
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - a data filter</dd>
<dd><code>dataFiles</code> - data files to validate have no new row deletes</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeletesForDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,java.lang.Iterable,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeletesForDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateNoNewDeletesForDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                java.lang.Long&nbsp;startingSnapshotId,
                                                <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                                java.lang.Iterable&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;dataFiles,
                                                <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no new delete files that must be applied to the given data files have been added
 to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - a data filter</dd>
<dd><code>dataFiles</code> - data files to validate have no new row deletes</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeleteFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateNoNewDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata, java.lang.Long, org.apache.iceberg.expressions.Expression)</code> instead</div>
</div>
<div class="block">Validates that no delete files matching a filter have been added to the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find new conflicting delete files</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeleteFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateNoNewDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no delete files matching a filter have been added to the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find new conflicting delete files</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeleteFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateNoNewDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
<div class="block">Validates that no delete files matching a partition set have been added to the table since a
 starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a partition set used to find new conflicting delete files</dd>
</dl>
</li>
</ul>
<a id="validateNoNewDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateNoNewDeleteFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateNoNewDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no delete files matching a partition set have been added to the table since a
 starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a partition set used to find new conflicting delete files</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="addedDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.util.PartitionSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addedDeleteFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;org.apache.iceberg.DeleteFileIndex&nbsp;addedDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                              java.lang.Long&nbsp;startingSnapshotId,
                                                              <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                                              <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.addedDeleteFiles(TableMetadata, Long, Expression, PartitionSet,
     Snapshot)</code> instead</div>
</div>
<div class="block">Returns matching delete files have been added to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find delete files</dd>
<dd><code>partitionSet</code> - a partition set used to find delete files</dd>
</dl>
</li>
</ul>
<a id="addedDeleteFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>addedDeleteFiles</h4>
<pre class="methodSignature">protected&nbsp;org.apache.iceberg.DeleteFileIndex&nbsp;addedDeleteFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                                              java.lang.Long&nbsp;startingSnapshotId,
                                                              <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                                              <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                                                              <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Returns matching delete files have been added to the table since a starting snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find delete files</dd>
<dd><code>partitionSet</code> - a partition set used to find delete files</dd>
<dd><code>parent</code> - parent snapshot of the branch</dd>
</dl>
</li>
</ul>
<a id="validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDeletedDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateDeletedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateDeletedDataFiles(TableMetadata, Long, Expression,
     Snapshot)</code> instead</div>
</div>
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find deleted data files</dd>
</dl>
</li>
</ul>
<a id="validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDeletedDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateDeletedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;dataFilter,
                                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>dataFilter</code> - an expression used to find deleted data files</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDeletedDataFiles</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateDeletedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span>
<div class="deprecationComment">will be removed in 1.3.0; use <code>MergingSnapshotProducer.validateNoNewDeleteFiles(TableMetadata, Long, PartitionSet,
     Snapshot)</code> instead</div>
</div>
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a partition set used to find deleted data files</dd>
</dl>
</li>
</ul>
<a id="validateDeletedDataFiles(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.PartitionSet,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDeletedDataFiles</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateDeletedDataFiles&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                        java.lang.Long&nbsp;startingSnapshotId,
                                        <a href="util/PartitionSet.html" title="class in org.apache.iceberg.util">PartitionSet</a>&nbsp;partitionSet,
                                        <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
<div class="block">Validates that no files matching a filter have been deleted from the table since a starting
 snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - table metadata to validate</dd>
<dd><code>startingSnapshotId</code> - id of the snapshot current at the start of the operation</dd>
<dd><code>partitionSet</code> - a partition set used to find deleted data files</dd>
<dd><code>parent</code> - ending snapshot on the branch being validated</dd>
</dl>
</li>
</ul>
<a id="setNewFilesSequenceNumber(long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNewFilesSequenceNumber</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;setNewFilesSequenceNumber&#8203;(long&nbsp;sequenceNumber)</pre>
</li>
</ul>
<a id="validateDataFilesExist(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.CharSequenceSet,boolean,org.apache.iceberg.expressions.Expression)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDataFilesExist</h4>
<pre class="methodSignature">@Deprecated
protected&nbsp;void&nbsp;validateDataFilesExist&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="util/CharSequenceSet.html" title="class in org.apache.iceberg.util">CharSequenceSet</a>&nbsp;requiredDataFiles,
                                      boolean&nbsp;skipDeletes,
                                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter)</pre>
<div class="deprecationBlock"><span class="deprecatedLabel">Deprecated.</span></div>
</li>
</ul>
<a id="validateDataFilesExist(org.apache.iceberg.TableMetadata,java.lang.Long,org.apache.iceberg.util.CharSequenceSet,boolean,org.apache.iceberg.expressions.Expression,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>validateDataFilesExist</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;validateDataFilesExist&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                      java.lang.Long&nbsp;startingSnapshotId,
                                      <a href="util/CharSequenceSet.html" title="class in org.apache.iceberg.util">CharSequenceSet</a>&nbsp;requiredDataFiles,
                                      boolean&nbsp;skipDeletes,
                                      <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;conflictDetectionFilter,
                                      <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;parent)</pre>
</li>
</ul>
<a id="summary()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>summary</h4>
<pre class="methodSignature">protected&nbsp;java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;summary()</pre>
</li>
</ul>
<a id="apply(org.apache.iceberg.TableMetadata,org.apache.iceberg.Snapshot)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>apply</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&gt;&nbsp;apply&#8203;(<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;base,
                                          <a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;snapshot)</pre>
<div class="block">Apply the update's changes to the given metadata and snapshot. Return the new manifest list.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>base</code> - the base table metadata to apply changes to</dd>
<dd><code>snapshot</code> - snapshot to apply the changes to</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a manifest list for the new snapshot.</dd>
</dl>
</li>
</ul>
<a id="updateEvent()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>updateEvent</h4>
<pre class="methodSignature">public&nbsp;java.lang.Object&nbsp;updateEvent()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="PendingUpdate.html#updateEvent()">PendingUpdate</a></code></span></div>
<div class="block">Generates update event to notify about metadata changes</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the generated event</dd>
</dl>
</li>
</ul>
<a id="cleanUncommitted(java.util.Set)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanUncommitted</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;cleanUncommitted&#8203;(java.util.Set&lt;<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&gt;&nbsp;committed)</pre>
<div class="block">Clean up any uncommitted manifests that were created.

 <p>Manifests may not be committed if apply is called more because a commit conflict has
 occurred. Implementations may keep around manifests because the same changes will be made by
 both apply calls. This method instructs the implementation to clean up those manifests and
 passes the paths of the manifests that were actually committed.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>committed</code> - a set of manifest paths that were actually committed</dd>
</dl>
</li>
</ul>
<a id="stageOnly()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>stageOnly</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;stageOnly()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SnapshotUpdate.html#stageOnly()">SnapshotUpdate</a></code></span></div>
<div class="block">Called to stage a snapshot in table metadata, but not update the current snapshot id.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SnapshotUpdate.html#stageOnly()">stageOnly</a></code>&nbsp;in interface&nbsp;<code><a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a>&lt;ThisT&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="scanManifestsWith(java.util.concurrent.ExecutorService)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scanManifestsWith</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;scanManifestsWith&#8203;(java.util.concurrent.ExecutorService&nbsp;executorService)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SnapshotUpdate.html#scanManifestsWith(java.util.concurrent.ExecutorService)">SnapshotUpdate</a></code></span></div>
<div class="block">Use a particular executor to scan manifests. The default worker pool will be used by default.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SnapshotUpdate.html#scanManifestsWith(java.util.concurrent.ExecutorService)">scanManifestsWith</a></code>&nbsp;in interface&nbsp;<code><a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a>&lt;ThisT&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>executorService</code> - the provided executor</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="commitMetrics()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commitMetrics</h4>
<pre class="methodSignature">protected&nbsp;<a href="metrics/CommitMetrics.html" title="class in org.apache.iceberg.metrics">CommitMetrics</a>&nbsp;commitMetrics()</pre>
</li>
</ul>
<a id="reportWith(org.apache.iceberg.metrics.MetricsReporter)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reportWith</h4>
<pre class="methodSignature">protected&nbsp;ThisT&nbsp;reportWith&#8203;(<a href="metrics/MetricsReporter.html" title="interface in org.apache.iceberg.metrics">MetricsReporter</a>&nbsp;newReporter)</pre>
</li>
</ul>
<a id="targetBranch(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>targetBranch</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;targetBranch&#8203;(java.lang.String&nbsp;branch)</pre>
<div class="block">* A setter for the target branch on which snapshot producer operation should be performed</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>branch</code> - to set as target branch</dd>
</dl>
</li>
</ul>
<a id="targetBranch()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>targetBranch</h4>
<pre class="methodSignature">protected&nbsp;java.lang.String&nbsp;targetBranch()</pre>
</li>
</ul>
<a id="workerPool()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>workerPool</h4>
<pre class="methodSignature">protected&nbsp;java.util.concurrent.ExecutorService&nbsp;workerPool()</pre>
</li>
</ul>
<a id="deleteWith(java.util.function.Consumer)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteWith</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;deleteWith&#8203;(java.util.function.Consumer&lt;java.lang.String&gt;&nbsp;deleteCallback)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="SnapshotUpdate.html#deleteWith(java.util.function.Consumer)">SnapshotUpdate</a></code></span></div>
<div class="block">Set a callback to delete files instead of the table's default.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SnapshotUpdate.html#deleteWith(java.util.function.Consumer)">deleteWith</a></code>&nbsp;in interface&nbsp;<code><a href="SnapshotUpdate.html" title="interface in org.apache.iceberg">SnapshotUpdate</a>&lt;ThisT&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>deleteCallback</code> - a String consumer used to delete locations.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this for method chaining</dd>
</dl>
</li>
</ul>
<a id="apply()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>apply</h4>
<pre class="methodSignature">public&nbsp;<a href="Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;apply()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="PendingUpdate.html#apply()">PendingUpdate</a></code></span></div>
<div class="block">Apply the pending changes and return the uncommitted changes for validation.

 <p>This does not result in a permanent update.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="PendingUpdate.html#apply()">apply</a></code>&nbsp;in interface&nbsp;<code><a href="PendingUpdate.html" title="interface in org.apache.iceberg">PendingUpdate</a>&lt;ThisT&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the uncommitted changes that would be committed by calling <a href="PendingUpdate.html#commit()"><code>PendingUpdate.commit()</code></a></dd>
</dl>
</li>
</ul>
<a id="current()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>current</h4>
<pre class="methodSignature">protected&nbsp;<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;current()</pre>
</li>
</ul>
<a id="refresh()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>refresh</h4>
<pre class="methodSignature">protected&nbsp;<a href="TableMetadata.html" title="class in org.apache.iceberg">TableMetadata</a>&nbsp;refresh()</pre>
</li>
</ul>
<a id="commit()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>commit</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;commit()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="PendingUpdate.html#commit()">PendingUpdate</a></code></span></div>
<div class="block">Apply the pending changes and commit.

 <p>Changes are committed by calling the underlying table's commit method.

 <p>Once the commit is successful, the updated table will be refreshed.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="PendingUpdate.html#commit()">commit</a></code>&nbsp;in interface&nbsp;<code><a href="PendingUpdate.html" title="interface in org.apache.iceberg">PendingUpdate</a>&lt;ThisT&gt;</code></dd>
</dl>
</li>
</ul>
<a id="cleanAll()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cleanAll</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;cleanAll()</pre>
</li>
</ul>
<a id="deleteFile(java.lang.String)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>deleteFile</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;deleteFile&#8203;(java.lang.String&nbsp;path)</pre>
</li>
</ul>
<a id="manifestListPath()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>manifestListPath</h4>
<pre class="methodSignature">protected&nbsp;<a href="io/OutputFile.html" title="interface in org.apache.iceberg.io">OutputFile</a>&nbsp;manifestListPath()</pre>
</li>
</ul>
<a id="newManifestOutput()">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newManifestOutput</h4>
<pre class="methodSignature">protected&nbsp;<a href="io/OutputFile.html" title="interface in org.apache.iceberg.io">OutputFile</a>&nbsp;newManifestOutput()</pre>
</li>
</ul>
<a id="newManifestWriter(org.apache.iceberg.PartitionSpec)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newManifestWriter</h4>
<pre class="methodSignature">protected&nbsp;<a href="ManifestWriter.html" title="class in org.apache.iceberg">ManifestWriter</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;newManifestWriter&#8203;(<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;spec)</pre>
</li>
</ul>
<a id="newDeleteManifestWriter(org.apache.iceberg.PartitionSpec)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newDeleteManifestWriter</h4>
<pre class="methodSignature">protected&nbsp;<a href="ManifestWriter.html" title="class in org.apache.iceberg">ManifestWriter</a>&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;&nbsp;newDeleteManifestWriter&#8203;(<a href="PartitionSpec.html" title="class in org.apache.iceberg">PartitionSpec</a>&nbsp;spec)</pre>
</li>
</ul>
<a id="newManifestReader(org.apache.iceberg.ManifestFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newManifestReader</h4>
<pre class="methodSignature">protected&nbsp;<a href="ManifestReader.html" title="class in org.apache.iceberg">ManifestReader</a>&lt;<a href="DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;newManifestReader&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</pre>
</li>
</ul>
<a id="newDeleteManifestReader(org.apache.iceberg.ManifestFile)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newDeleteManifestReader</h4>
<pre class="methodSignature">protected&nbsp;<a href="ManifestReader.html" title="class in org.apache.iceberg">ManifestReader</a>&lt;<a href="DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;&nbsp;newDeleteManifestReader&#8203;(<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&nbsp;manifest)</pre>
</li>
</ul>
<a id="snapshotId()">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>snapshotId</h4>
<pre class="methodSignature">protected&nbsp;long&nbsp;snapshotId()</pre>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</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" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a id="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
</footer>
</body>
</html>
