<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>SnapshotUtil</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.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.5.1.js"></script>
<script type="text/javascript" src="../../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="SnapshotUtil";
        }
    }
    catch(err) {
    }
//-->
var data = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":9,"i6":9,"i7":9,"i8":9,"i9":9,"i10":9,"i11":9,"i12":9,"i13":9,"i14":9,"i15":9,"i16":9,"i17":9,"i18":9};
var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],8:["t4","Concrete 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>Constr&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>Constr&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.util</a></div>
<h2 title="Class SnapshotUtil" class="title">Class SnapshotUtil</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li>org.apache.iceberg.util.SnapshotUtil</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr>
<pre>public class <span class="typeNameLabel">SnapshotUtil</span>
extends java.lang.Object</pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<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="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.Long&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ancestorIds(org.apache.iceberg.Snapshot,java.util.function.Function)">ancestorIds</a></span>&#8203;(<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;snapshot,
           java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>static java.lang.Iterable&lt;java.lang.Long&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ancestorIdsBetween(long,java.lang.Long,java.util.function.Function)">ancestorIdsBetween</a></span>&#8203;(long&nbsp;latestSnapshotId,
                  java.lang.Long&nbsp;oldestSnapshotId,
                  java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>static java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ancestorsBetween(long,java.lang.Long,java.util.function.Function)">ancestorsBetween</a></span>&#8203;(long&nbsp;latestSnapshotId,
                java.lang.Long&nbsp;oldestSnapshotId,
                java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>static java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ancestorsOf(long,java.util.function.Function)">ancestorsOf</a></span>&#8203;(long&nbsp;snapshotId,
           java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.Long&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#currentAncestorIds(org.apache.iceberg.Table)">currentAncestorIds</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</code></th>
<td class="colLast">
<div class="block">Return the snapshot IDs for the ancestors of the current table state.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>static java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#currentAncestors(org.apache.iceberg.Table)">currentAncestors</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</code></th>
<td class="colLast">
<div class="block">Returns an iterable that traverses the table's snapshots from the current to the last known ancestor.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAncestorOf(long,long,java.util.function.Function)">isAncestorOf</a></span>&#8203;(long&nbsp;snapshotId,
            long&nbsp;ancestorSnapshotId,
            java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">
<div class="block">Returns whether ancestorSnapshotId is an ancestor of snapshotId using the given lookup function.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAncestorOf(org.apache.iceberg.Table,long)">isAncestorOf</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
            long&nbsp;ancestorSnapshotId)</code></th>
<td class="colLast">
<div class="block">Returns whether ancestorSnapshotId is an ancestor of the table's current state.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isAncestorOf(org.apache.iceberg.Table,long,long)">isAncestorOf</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
            long&nbsp;snapshotId,
            long&nbsp;ancestorSnapshotId)</code></th>
<td class="colLast">
<div class="block">Returns whether ancestorSnapshotId is an ancestor of snapshotId.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isParentAncestorOf(org.apache.iceberg.Table,long,long)">isParentAncestorOf</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                  long&nbsp;snapshotId,
                  long&nbsp;ancestorParentSnapshotId)</code></th>
<td class="colLast">
<div class="block">Returns whether some ancestor of snapshotId has parentId matches ancestorParentSnapshotId</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>static 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="#newFiles(java.lang.Long,long,java.util.function.Function,org.apache.iceberg.io.FileIO)">newFiles</a></span>&#8203;(java.lang.Long&nbsp;baseSnapshotId,
        long&nbsp;latestSnapshotId,
        java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup,
        <a href="../io/FileIO.html" title="interface in org.apache.iceberg.io">FileIO</a>&nbsp;io)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>static <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="#oldestAncestor(org.apache.iceberg.Table)">oldestAncestor</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</code></th>
<td class="colLast">
<div class="block">Traverses the history of the table's current snapshot and finds the oldest Snapshot.</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>static <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="#oldestAncestorAfter(org.apache.iceberg.Table,long)">oldestAncestorAfter</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                   long&nbsp;timestampMillis)</code></th>
<td class="colLast">
<div class="block">Traverses the history of the table's current snapshot and finds the first snapshot committed after the given time.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>static <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="#oldestAncestorOf(long,java.util.function.Function)">oldestAncestorOf</a></span>&#8203;(long&nbsp;snapshotId,
                java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</code></th>
<td class="colLast">
<div class="block">Traverses the history and finds the oldest ancestor of the specified snapshot.</div>
</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>static <a href="../Schema.html" title="class in org.apache.iceberg">Schema</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#schemaFor(org.apache.iceberg.Table,long)">schemaFor</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
         long&nbsp;snapshotId)</code></th>
<td class="colLast">
<div class="block">Returns the schema of the table for the specified snapshot.</div>
</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>static <a href="../Schema.html" title="class in org.apache.iceberg">Schema</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#schemaFor(org.apache.iceberg.Table,java.lang.Long,java.lang.Long)">schemaFor</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
         java.lang.Long&nbsp;snapshotId,
         java.lang.Long&nbsp;timestampMillis)</code></th>
<td class="colLast">
<div class="block">Convenience method for returning the schema of the table for a snapshot,
 when we have a snapshot id or a timestamp.</div>
</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>static <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="#snapshotAfter(org.apache.iceberg.Table,long)">snapshotAfter</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
             long&nbsp;snapshotId)</code></th>
<td class="colLast">
<div class="block">Traverses the history of the table's current snapshot and finds the snapshot with the given snapshot id as its
 parent.</div>
</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>static long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#snapshotIdAsOfTime(org.apache.iceberg.Table,long)">snapshotIdAsOfTime</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                  long&nbsp;timestampMillis)</code></th>
<td class="colLast">
<div class="block">Returns the ID of the most recent snapshot for the table as of the timestamp.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>static java.util.List&lt;java.lang.Long&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#snapshotIdsBetween(org.apache.iceberg.Table,long,long)">snapshotIdsBetween</a></span>&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                  long&nbsp;fromSnapshotId,
                  long&nbsp;toSnapshotId)</code></th>
<td class="colLast">
<div class="block">Returns list of snapshot ids in the range - (fromSnapshotId, toSnapshotId]</div>
</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>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a id="isAncestorOf(org.apache.iceberg.Table,long,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAncestorOf</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;isAncestorOf&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                   long&nbsp;snapshotId,
                                   long&nbsp;ancestorSnapshotId)</pre>
<div class="block">Returns whether ancestorSnapshotId is an ancestor of snapshotId.</div>
</li>
</ul>
<a id="isAncestorOf(long,long,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAncestorOf</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;isAncestorOf&#8203;(long&nbsp;snapshotId,
                                   long&nbsp;ancestorSnapshotId,
                                   java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
<div class="block">Returns whether ancestorSnapshotId is an ancestor of snapshotId using the given lookup function.</div>
</li>
</ul>
<a id="isAncestorOf(org.apache.iceberg.Table,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isAncestorOf</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;isAncestorOf&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                   long&nbsp;ancestorSnapshotId)</pre>
<div class="block">Returns whether ancestorSnapshotId is an ancestor of the table's current state.</div>
</li>
</ul>
<a id="isParentAncestorOf(org.apache.iceberg.Table,long,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isParentAncestorOf</h4>
<pre class="methodSignature">public static&nbsp;boolean&nbsp;isParentAncestorOf&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                         long&nbsp;snapshotId,
                                         long&nbsp;ancestorParentSnapshotId)</pre>
<div class="block">Returns whether some ancestor of snapshotId has parentId matches ancestorParentSnapshotId</div>
</li>
</ul>
<a id="currentAncestors(org.apache.iceberg.Table)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>currentAncestors</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;currentAncestors&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</pre>
<div class="block">Returns an iterable that traverses the table's snapshots from the current to the last known ancestor.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a Table</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an iterable from the table's current snapshot to its last known ancestor</dd>
</dl>
</li>
</ul>
<a id="currentAncestorIds(org.apache.iceberg.Table)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>currentAncestorIds</h4>
<pre class="methodSignature">public static&nbsp;java.util.List&lt;java.lang.Long&gt;&nbsp;currentAncestorIds&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</pre>
<div class="block">Return the snapshot IDs for the ancestors of the current table state.
 <p>
 Ancestor IDs are ordered by commit time, descending. The first ID is the current snapshot, followed by its parent,
 and so on.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a <a href="../Table.html" title="interface in org.apache.iceberg"><code>Table</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a set of snapshot IDs of the known ancestor snapshots, including the current ID</dd>
</dl>
</li>
</ul>
<a id="oldestAncestor(org.apache.iceberg.Table)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>oldestAncestor</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;oldestAncestor&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table)</pre>
<div class="block">Traverses the history of the table's current snapshot and finds the oldest Snapshot.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>null if there is no current snapshot in the table, else the oldest Snapshot.</dd>
</dl>
</li>
</ul>
<a id="oldestAncestorOf(long,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>oldestAncestorOf</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;oldestAncestorOf&#8203;(long&nbsp;snapshotId,
                                        java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
<div class="block">Traverses the history and finds the oldest ancestor of the specified snapshot.
 <p>
 Oldest ancestor is defined as the ancestor snapshot whose parent is null or has been expired.
 If the specified snapshot has no parent or parent has been expired,
 the specified snapshot itself is returned.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>snapshotId</code> - the ID of the snapshot to find the oldest ancestor</dd>
<dd><code>lookup</code> - lookup function from snapshot ID to snapshot</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>null if there is no current snapshot in the table, else the oldest Snapshot.</dd>
</dl>
</li>
</ul>
<a id="ancestorsOf(long,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ancestorsOf</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;ancestorsOf&#8203;(long&nbsp;snapshotId,
                                                       java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
</li>
</ul>
<a id="oldestAncestorAfter(org.apache.iceberg.Table,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>oldestAncestorAfter</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;oldestAncestorAfter&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                           long&nbsp;timestampMillis)</pre>
<div class="block">Traverses the history of the table's current snapshot and finds the first snapshot committed after the given time.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a table</dd>
<dd><code>timestampMillis</code> - a timestamp in milliseconds</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the first snapshot after the given timestamp, or null if the current snapshot is older than the timestamp</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalStateException</code> - if the first ancestor after the given time can't be determined</dd>
</dl>
</li>
</ul>
<a id="snapshotIdsBetween(org.apache.iceberg.Table,long,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotIdsBetween</h4>
<pre class="methodSignature">public static&nbsp;java.util.List&lt;java.lang.Long&gt;&nbsp;snapshotIdsBetween&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                                                long&nbsp;fromSnapshotId,
                                                                long&nbsp;toSnapshotId)</pre>
<div class="block">Returns list of snapshot ids in the range - (fromSnapshotId, toSnapshotId]
 <p>
 This method assumes that fromSnapshotId is an ancestor of toSnapshotId.</div>
</li>
</ul>
<a id="ancestorIdsBetween(long,java.lang.Long,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ancestorIdsBetween</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Iterable&lt;java.lang.Long&gt;&nbsp;ancestorIdsBetween&#8203;(long&nbsp;latestSnapshotId,
                                                                    java.lang.Long&nbsp;oldestSnapshotId,
                                                                    java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
</li>
</ul>
<a id="ancestorsBetween(long,java.lang.Long,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ancestorsBetween</h4>
<pre class="methodSignature">public static&nbsp;java.lang.Iterable&lt;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;ancestorsBetween&#8203;(long&nbsp;latestSnapshotId,
                                                            java.lang.Long&nbsp;oldestSnapshotId,
                                                            java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
</li>
</ul>
<a id="ancestorIds(org.apache.iceberg.Snapshot,java.util.function.Function)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ancestorIds</h4>
<pre class="methodSignature">public static&nbsp;java.util.List&lt;java.lang.Long&gt;&nbsp;ancestorIds&#8203;(<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;snapshot,
                                                         java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup)</pre>
</li>
</ul>
<a id="newFiles(java.lang.Long,long,java.util.function.Function,org.apache.iceberg.io.FileIO)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newFiles</h4>
<pre class="methodSignature">public static&nbsp;java.util.List&lt;<a href="../DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;&nbsp;newFiles&#8203;(java.lang.Long&nbsp;baseSnapshotId,
                                                long&nbsp;latestSnapshotId,
                                                java.util.function.Function&lt;java.lang.Long,&#8203;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&gt;&nbsp;lookup,
                                                <a href="../io/FileIO.html" title="interface in org.apache.iceberg.io">FileIO</a>&nbsp;io)</pre>
</li>
</ul>
<a id="snapshotAfter(org.apache.iceberg.Table,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotAfter</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Snapshot.html" title="interface in org.apache.iceberg">Snapshot</a>&nbsp;snapshotAfter&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                     long&nbsp;snapshotId)</pre>
<div class="block">Traverses the history of the table's current snapshot and finds the snapshot with the given snapshot id as its
 parent.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the snapshot for which the given snapshot is the parent</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - when the given snapshotId is not found in the table</dd>
<dd><code>java.lang.IllegalStateException</code> - when the given snapshotId is not an ancestor of the current table state</dd>
</dl>
</li>
</ul>
<a id="snapshotIdAsOfTime(org.apache.iceberg.Table,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>snapshotIdAsOfTime</h4>
<pre class="methodSignature">public static&nbsp;long&nbsp;snapshotIdAsOfTime&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                                      long&nbsp;timestampMillis)</pre>
<div class="block">Returns the ID of the most recent snapshot for the table as of the timestamp.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a <a href="../Table.html" title="interface in org.apache.iceberg"><code>Table</code></a></dd>
<dd><code>timestampMillis</code> - the timestamp in millis since the Unix epoch</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the snapshot ID</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - when no snapshot is found in the table
 older than the timestamp</dd>
</dl>
</li>
</ul>
<a id="schemaFor(org.apache.iceberg.Table,long)">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>schemaFor</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;schemaFor&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                               long&nbsp;snapshotId)</pre>
<div class="block">Returns the schema of the table for the specified snapshot.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a <a href="../Table.html" title="interface in org.apache.iceberg"><code>Table</code></a></dd>
<dd><code>snapshotId</code> - the ID of the snapshot</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the schema</dd>
</dl>
</li>
</ul>
<a id="schemaFor(org.apache.iceberg.Table,java.lang.Long,java.lang.Long)">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>schemaFor</h4>
<pre class="methodSignature">public static&nbsp;<a href="../Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;schemaFor&#8203;(<a href="../Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
                               java.lang.Long&nbsp;snapshotId,
                               java.lang.Long&nbsp;timestampMillis)</pre>
<div class="block">Convenience method for returning the schema of the table for a snapshot,
 when we have a snapshot id or a timestamp. Only one of them should be specified
 (non-null), or an IllegalArgumentException is thrown.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>table</code> - a <a href="../Table.html" title="interface in org.apache.iceberg"><code>Table</code></a></dd>
<dd><code>snapshotId</code> - the ID of the snapshot</dd>
<dd><code>timestampMillis</code> - the timestamp in millis since the Unix epoch</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the schema</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code>java.lang.IllegalArgumentException</code> - if both snapshotId and timestampMillis are non-null</dd>
</dl>
</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>Constr&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>Constr&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>
