blob: c79b22b362eb4273b9d660294e9b3ad34381909b [file] [log] [blame]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>DataFilesTable.DataFilesTableScan</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="DataFilesTable.DataFilesTableScan";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"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};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
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><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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</a></div>
<h2 title="Class DataFilesTable.DataFilesTableScan" class="title">Class DataFilesTable.DataFilesTableScan</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="SnapshotScan.html" title="class in org.apache.iceberg">org.apache.iceberg.SnapshotScan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</li>
<li>
<ul class="inheritance">
<li>org.apache.iceberg.DataFilesTable.DataFilesTableScan</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</code>, <code><a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></dd>
</dl>
<dl>
<dt>Enclosing class:</dt>
<dd><a href="DataFilesTable.html" title="class in org.apache.iceberg">DataFilesTable</a></dd>
</dl>
<hr>
<pre>public static class <span class="typeNameLabel">DataFilesTable.DataFilesTableScan</span>
extends <a href="SnapshotScan.html" title="class in org.apache.iceberg">SnapshotScan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DELETE_SCAN_COLUMNS">DELETE_SCAN_COLUMNS</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#DELETE_SCAN_WITH_STATS_COLUMNS">DELETE_SCAN_WITH_STATS_COLUMNS</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#PLAN_SCANS_WITH_WORKER_POOL">PLAN_SCANS_WITH_WORKER_POOL</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#SCAN_COLUMNS">SCAN_COLUMNS</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#SCAN_WITH_STATS_COLUMNS">SCAN_WITH_STATS_COLUMNS</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== 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="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code><a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#appendsAfter(long)">appendsAfter</a></span>&#8203;(long&nbsp;fromSnapshotId)</code></th>
<td class="colLast">
<div class="block">Create a new <a href="TableScan.html" title="interface in org.apache.iceberg"><code>TableScan</code></a> to read appended data from <code>fromSnapshotId</code> exclusive to
the current snapshot inclusive.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code><a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#appendsBetween(long,long)">appendsBetween</a></span>&#8203;(long&nbsp;fromSnapshotId,
long&nbsp;toSnapshotId)</code></th>
<td class="colLast">
<div class="block">Create a new <a href="TableScan.html" title="interface in org.apache.iceberg"><code>TableScan</code></a> to read appended data from <code>fromSnapshotId</code> exclusive to
<code>toSnapshotId</code> inclusive.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<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;caseSensitive)</code></th>
<td class="colLast">
<div class="block">Create a new scan from this that, if data columns where selected via <a href="Scan.html#select(java.util.Collection)"><code>Scan.select(java.util.Collection)</code></a>, controls whether the match to the schema will be done with case
sensitivity.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected org.apache.iceberg.TableScanContext</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#context()">context</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#doPlanFiles()">doPlanFiles</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code><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="#filter()">filter</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns this scan's filter <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#filter(org.apache.iceberg.expressions.Expression)">filter</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">Create a new scan from the results of this filtered by the <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a>.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#ignoreResiduals()">ignoreResiduals</a></span>()</code></th>
<td class="colLast">
<div class="block">Create a new scan from this that applies data filtering to files but not to rows in those
files.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#includeColumnStats()">includeColumnStats</a></span>()</code></th>
<td class="colLast">
<div class="block">Create a new scan from this that loads the column stats with each data file.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>protected <a href="io/FileIO.html" title="interface in org.apache.iceberg.io">FileIO</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#io()">io</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isCaseSensitive()">isCaseSensitive</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns whether this scan is case-sensitive with respect to column names.</div>
</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>protected <a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&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="#manifests()">manifests</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns an iterable of manifest files to explore for this files metadata table scan</div>
</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#metricsReporter(org.apache.iceberg.metrics.MetricsReporter)">metricsReporter</a></span>&#8203;(<a href="metrics/MetricsReporter.html" title="interface in org.apache.iceberg.metrics">MetricsReporter</a>&nbsp;reporter)</code></th>
<td class="colLast">
<div class="block">Create a new scan that will report scan metrics to the provided reporter in addition to
reporters maintained by the scan.</div>
</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#newRefinedScan(org.apache.iceberg.Table,org.apache.iceberg.Schema,org.apache.iceberg.TableScanContext)">newRefinedScan</a></span>&#8203;(<a href="Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;schema,
org.apache.iceberg.TableScanContext&nbsp;context)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#option(java.lang.String,java.lang.String)">option</a></span>&#8203;(java.lang.String&nbsp;property,
java.lang.String&nbsp;value)</code></th>
<td class="colLast">
<div class="block">Create a new scan from this scan's configuration that will override the <a href="Table.html" title="interface in org.apache.iceberg"><code>Table</code></a>'s
behavior based on the incoming pair.</div>
</td>
</tr>
<tr id="i15" 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="#options()">options</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>protected java.util.concurrent.ExecutorService</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#planExecutor()">planExecutor</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code><a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&lt;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#planTasks()">planTasks</a></span>()</code></th>
<td class="colLast">
<div class="block">Plan balanced task groups for this scan by splitting large and combining small tasks.</div>
</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#planWith(java.util.concurrent.ExecutorService)">planWith</a></span>&#8203;(java.util.concurrent.ExecutorService&nbsp;executorService)</code></th>
<td class="colLast">
<div class="block">Create a new scan to use a particular executor to plan.</div>
</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>ThisT</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#project(org.apache.iceberg.Schema)">project</a></span>&#8203;(<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;projectedSchema)</code></th>
<td class="colLast">
<div class="block">Create a new scan from this with the schema as its projection.</div>
</td>
</tr>
<tr id="i20" 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="#residualFilter()">residualFilter</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>protected java.util.List&lt;java.lang.String&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#scanColumns()">scanColumns</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code><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="#schema()">schema</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns this scan's projection <a href="Schema.html" title="class in org.apache.iceberg"><code>Schema</code></a>.</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="#select(java.util.Collection)">select</a></span>&#8203;(java.util.Collection&lt;java.lang.String&gt;&nbsp;columns)</code></th>
<td class="colLast">
<div class="block">Create a new scan from this that will read the given data columns.</div>
</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldIgnoreResiduals()">shouldIgnoreResiduals</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldPlanWithExecutor()">shouldPlanWithExecutor</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#shouldReturnColumnStats()">shouldReturnColumnStats</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#splitLookback()">splitLookback</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the split lookback for this scan.</div>
</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#splitOpenFileCost()">splitOpenFileCost</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the split open file cost for this scan.</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code><a href="Table.html" title="interface in org.apache.iceberg">Table</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#table()">table</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>protected <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="#tableSchema()">tableSchema</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>protected <a href="MetadataTableType.html" title="enum in org.apache.iceberg">MetadataTableType</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#tableType()">tableType</a></span>()</code></th>
<td class="colLast">
<div class="block">Type of scan being performed, such as <a href="MetadataTableType.html#ALL_DATA_FILES"><code>MetadataTableType.ALL_DATA_FILES</code></a> when scanning a
table's <a href="AllDataFilesTable.html" title="class in org.apache.iceberg"><code>AllDataFilesTable</code></a>.</div>
</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>long</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#targetSplitSize()">targetSplitSize</a></span>()</code></th>
<td class="colLast">
<div class="block">Returns the target split size for this scan.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.SnapshotScan">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.iceberg.<a href="SnapshotScan.html" title="class in org.apache.iceberg">SnapshotScan</a></h3>
<code><a href="SnapshotScan.html#asOfTime(long)">asOfTime</a>, <a href="SnapshotScan.html#planFiles()">planFiles</a>, <a href="SnapshotScan.html#scanMetrics()">scanMetrics</a>, <a href="SnapshotScan.html#snapshot()">snapshot</a>, <a href="SnapshotScan.html#snapshotId()">snapshotId</a>, <a href="SnapshotScan.html#toString()">toString</a>, <a href="SnapshotScan.html#useRef(java.lang.String)">useRef</a>, <a href="SnapshotScan.html#useSnapshot(long)">useSnapshot</a>, <a href="SnapshotScan.html#useSnapshotSchema()">useSnapshotSchema</a></code></li>
</ul>
<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, wait, wait, wait</code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.Scan">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="Scan.html" title="interface in org.apache.iceberg">Scan</a></h3>
<code><a href="Scan.html#caseSensitive(boolean)">caseSensitive</a>, <a href="Scan.html#filter()">filter</a>, <a href="Scan.html#filter(org.apache.iceberg.expressions.Expression)">filter</a>, <a href="Scan.html#ignoreResiduals()">ignoreResiduals</a>, <a href="Scan.html#includeColumnStats()">includeColumnStats</a>, <a href="Scan.html#isCaseSensitive()">isCaseSensitive</a>, <a href="Scan.html#metricsReporter(org.apache.iceberg.metrics.MetricsReporter)">metricsReporter</a>, <a href="Scan.html#option(java.lang.String,java.lang.String)">option</a>, <a href="Scan.html#planFiles()">planFiles</a>, <a href="Scan.html#planWith(java.util.concurrent.ExecutorService)">planWith</a>, <a href="Scan.html#project(org.apache.iceberg.Schema)">project</a>, <a href="Scan.html#schema()">schema</a>, <a href="Scan.html#select(java.lang.String...)">select</a>, <a href="Scan.html#select(java.util.Collection)">select</a>, <a href="Scan.html#splitLookback()">splitLookback</a>, <a href="Scan.html#splitOpenFileCost()">splitOpenFileCost</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.org.apache.iceberg.TableScan">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></h3>
<code><a href="TableScan.html#asOfTime(long)">asOfTime</a>, <a href="TableScan.html#snapshot()">snapshot</a>, <a href="TableScan.html#table()">table</a>, <a href="TableScan.html#useRef(java.lang.String)">useRef</a>, <a href="TableScan.html#useSnapshot(long)">useSnapshot</a></code></li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="SCAN_COLUMNS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SCAN_COLUMNS</h4>
<pre>protected static final&nbsp;java.util.List&lt;java.lang.String&gt; SCAN_COLUMNS</pre>
</li>
</ul>
<a id="SCAN_WITH_STATS_COLUMNS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>SCAN_WITH_STATS_COLUMNS</h4>
<pre>protected static final&nbsp;java.util.List&lt;java.lang.String&gt; SCAN_WITH_STATS_COLUMNS</pre>
</li>
</ul>
<a id="DELETE_SCAN_COLUMNS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DELETE_SCAN_COLUMNS</h4>
<pre>protected static final&nbsp;java.util.List&lt;java.lang.String&gt; DELETE_SCAN_COLUMNS</pre>
</li>
</ul>
<a id="DELETE_SCAN_WITH_STATS_COLUMNS">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DELETE_SCAN_WITH_STATS_COLUMNS</h4>
<pre>protected static final&nbsp;java.util.List&lt;java.lang.String&gt; DELETE_SCAN_WITH_STATS_COLUMNS</pre>
</li>
</ul>
<a id="PLAN_SCANS_WITH_WORKER_POOL">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>PLAN_SCANS_WITH_WORKER_POOL</h4>
<pre>protected static final&nbsp;boolean PLAN_SCANS_WITH_WORKER_POOL</pre>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="newRefinedScan(org.apache.iceberg.Table,org.apache.iceberg.Schema,org.apache.iceberg.TableScanContext)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>newRefinedScan</h4>
<pre class="methodSignature">protected&nbsp;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>&nbsp;newRefinedScan&#8203;(<a href="Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table,
<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;schema,
org.apache.iceberg.TableScanContext&nbsp;context)</pre>
</li>
</ul>
<a id="manifests()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>manifests</h4>
<pre class="methodSignature">protected&nbsp;<a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&lt;<a href="ManifestFile.html" title="interface in org.apache.iceberg">ManifestFile</a>&gt;&nbsp;manifests()</pre>
<div class="block">Returns an iterable of manifest files to explore for this files metadata table scan</div>
</li>
</ul>
<a id="doPlanFiles()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doPlanFiles</h4>
<pre class="methodSignature">protected&nbsp;<a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&lt;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>&gt;&nbsp;doPlanFiles()</pre>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="SnapshotScan.html#doPlanFiles()">doPlanFiles</a></code>&nbsp;in class&nbsp;<code><a href="SnapshotScan.html" title="class in org.apache.iceberg">SnapshotScan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a id="tableType()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tableType</h4>
<pre class="methodSignature">protected&nbsp;<a href="MetadataTableType.html" title="enum in org.apache.iceberg">MetadataTableType</a>&nbsp;tableType()</pre>
<div class="block">Type of scan being performed, such as <a href="MetadataTableType.html#ALL_DATA_FILES"><code>MetadataTableType.ALL_DATA_FILES</code></a> when scanning a
table's <a href="AllDataFilesTable.html" title="class in org.apache.iceberg"><code>AllDataFilesTable</code></a>.
<p>Used for logging and error messages.</div>
</li>
</ul>
<a id="appendsBetween(long,long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendsBetween</h4>
<pre class="methodSignature">public&nbsp;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>&nbsp;appendsBetween&#8203;(long&nbsp;fromSnapshotId,
long&nbsp;toSnapshotId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="TableScan.html#appendsBetween(long,long)">TableScan</a></code></span></div>
<div class="block">Create a new <a href="TableScan.html" title="interface in org.apache.iceberg"><code>TableScan</code></a> to read appended data from <code>fromSnapshotId</code> exclusive to
<code>toSnapshotId</code> inclusive.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TableScan.html#appendsBetween(long,long)">appendsBetween</a></code>&nbsp;in interface&nbsp;<code><a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromSnapshotId</code> - the last snapshot id read by the user, exclusive</dd>
<dd><code>toSnapshotId</code> - read append data up to this snapshot id</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a table scan which can read append data from <code>fromSnapshotId</code> exclusive and up to
<code>toSnapshotId</code> inclusive</dd>
</dl>
</li>
</ul>
<a id="appendsAfter(long)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>appendsAfter</h4>
<pre class="methodSignature">public&nbsp;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>&nbsp;appendsAfter&#8203;(long&nbsp;fromSnapshotId)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="TableScan.html#appendsAfter(long)">TableScan</a></code></span></div>
<div class="block">Create a new <a href="TableScan.html" title="interface in org.apache.iceberg"><code>TableScan</code></a> to read appended data from <code>fromSnapshotId</code> exclusive to
the current snapshot inclusive.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="TableScan.html#appendsAfter(long)">appendsAfter</a></code>&nbsp;in interface&nbsp;<code><a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>fromSnapshotId</code> - - the last snapshot id read by the user, exclusive</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a table scan which can read append data from <code>fromSnapshotId</code> exclusive and up to
current snapshot inclusive</dd>
</dl>
</li>
</ul>
<a id="targetSplitSize()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>targetSplitSize</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;targetSplitSize()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#targetSplitSize()">Scan</a></code></span></div>
<div class="block">Returns the target split size for this scan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#targetSplitSize()">targetSplitSize</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</code></dd>
</dl>
</li>
</ul>
<a id="planTasks()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>planTasks</h4>
<pre class="methodSignature">public&nbsp;<a href="io/CloseableIterable.html" title="interface in org.apache.iceberg.io">CloseableIterable</a>&lt;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;&nbsp;planTasks()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#planTasks()">Scan</a></code></span></div>
<div class="block">Plan balanced task groups for this scan by splitting large and combining small tasks.
<p>Task groups created by this method may read partial input files, multiple input files or
both.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#planTasks()">planTasks</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;<a href="TableScan.html" title="interface in org.apache.iceberg">TableScan</a>,&#8203;<a href="FileScanTask.html" title="interface in org.apache.iceberg">FileScanTask</a>,&#8203;<a href="CombinedScanTask.html" title="interface in org.apache.iceberg">CombinedScanTask</a>&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>an Iterable of balanced task groups required by this scan</dd>
</dl>
</li>
</ul>
<a id="table()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>table</h4>
<pre class="methodSignature">public&nbsp;<a href="Table.html" title="interface in org.apache.iceberg">Table</a>&nbsp;table()</pre>
</li>
</ul>
<a id="io()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>io</h4>
<pre class="methodSignature">protected&nbsp;<a href="io/FileIO.html" title="interface in org.apache.iceberg.io">FileIO</a>&nbsp;io()</pre>
</li>
</ul>
<a id="tableSchema()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>tableSchema</h4>
<pre class="methodSignature">protected&nbsp;<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;tableSchema()</pre>
</li>
</ul>
<a id="context()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>context</h4>
<pre class="methodSignature">protected&nbsp;org.apache.iceberg.TableScanContext&nbsp;context()</pre>
</li>
</ul>
<a id="options()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>options</h4>
<pre class="methodSignature">protected&nbsp;java.util.Map&lt;java.lang.String,&#8203;java.lang.String&gt;&nbsp;options()</pre>
</li>
</ul>
<a id="scanColumns()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>scanColumns</h4>
<pre class="methodSignature">protected&nbsp;java.util.List&lt;java.lang.String&gt;&nbsp;scanColumns()</pre>
</li>
</ul>
<a id="shouldReturnColumnStats()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldReturnColumnStats</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;shouldReturnColumnStats()</pre>
</li>
</ul>
<a id="shouldIgnoreResiduals()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldIgnoreResiduals</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;shouldIgnoreResiduals()</pre>
</li>
</ul>
<a id="residualFilter()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>residualFilter</h4>
<pre class="methodSignature">protected&nbsp;<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;residualFilter()</pre>
</li>
</ul>
<a id="shouldPlanWithExecutor()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>shouldPlanWithExecutor</h4>
<pre class="methodSignature">protected&nbsp;boolean&nbsp;shouldPlanWithExecutor()</pre>
</li>
</ul>
<a id="planExecutor()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>planExecutor</h4>
<pre class="methodSignature">protected&nbsp;java.util.concurrent.ExecutorService&nbsp;planExecutor()</pre>
</li>
</ul>
<a id="option(java.lang.String,java.lang.String)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>option</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;option&#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="Scan.html#option(java.lang.String,java.lang.String)">Scan</a></code></span></div>
<div class="block">Create a new scan from this scan's configuration that will override the <a href="Table.html" title="interface in org.apache.iceberg"><code>Table</code></a>'s
behavior based on the incoming pair. Unknown properties will be ignored.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#option(java.lang.String,java.lang.String)">option</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>property</code> - name of the table property to be overridden</dd>
<dd><code>value</code> - value to override with</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this with overridden behavior</dd>
</dl>
</li>
</ul>
<a id="project(org.apache.iceberg.Schema)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>project</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;project&#8203;(<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;projectedSchema)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#project(org.apache.iceberg.Schema)">Scan</a></code></span></div>
<div class="block">Create a new scan from this with the schema as its projection.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#project(org.apache.iceberg.Schema)">project</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>projectedSchema</code> - a projection schema</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this with the given projection</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;caseSensitive)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#caseSensitive(boolean)">Scan</a></code></span></div>
<div class="block">Create a new scan from this that, if data columns where selected via <a href="Scan.html#select(java.util.Collection)"><code>Scan.select(java.util.Collection)</code></a>, controls whether the match to the schema will be done with case
sensitivity. Default is true.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#caseSensitive(boolean)">caseSensitive</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this with case sensitivity as stated</dd>
</dl>
</li>
</ul>
<a id="isCaseSensitive()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isCaseSensitive</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isCaseSensitive()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#isCaseSensitive()">Scan</a></code></span></div>
<div class="block">Returns whether this scan is case-sensitive with respect to column names.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#isCaseSensitive()">isCaseSensitive</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if case-sensitive, false otherwise.</dd>
</dl>
</li>
</ul>
<a id="includeColumnStats()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>includeColumnStats</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;includeColumnStats()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#includeColumnStats()">Scan</a></code></span></div>
<div class="block">Create a new scan from this that loads the column stats with each data file.
<p>Column stats include: value count, null value count, lower bounds, and upper bounds.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#includeColumnStats()">includeColumnStats</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this that loads column stats.</dd>
</dl>
</li>
</ul>
<a id="select(java.util.Collection)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>select</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;select&#8203;(java.util.Collection&lt;java.lang.String&gt;&nbsp;columns)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#select(java.util.Collection)">Scan</a></code></span></div>
<div class="block">Create a new scan from this that will read the given data columns. This produces an expected
schema that includes all fields that are either selected or used by this scan's filter
expression.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#select(java.util.Collection)">select</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>columns</code> - column names from the table's schema</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this with the given projection columns</dd>
</dl>
</li>
</ul>
<a id="filter(org.apache.iceberg.expressions.Expression)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filter</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;filter&#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="Scan.html#filter(org.apache.iceberg.expressions.Expression)">Scan</a></code></span></div>
<div class="block">Create a new scan from the results of this filtered by the <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#filter(org.apache.iceberg.expressions.Expression)">filter</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>expr</code> - a filter expression</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this with results filtered by the expression</dd>
</dl>
</li>
</ul>
<a id="filter()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>filter</h4>
<pre class="methodSignature">public&nbsp;<a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions">Expression</a>&nbsp;filter()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#filter()">Scan</a></code></span></div>
<div class="block">Returns this scan's filter <a href="expressions/Expression.html" title="interface in org.apache.iceberg.expressions"><code>Expression</code></a>.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#filter()">filter</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this scan's filter expression</dd>
</dl>
</li>
</ul>
<a id="ignoreResiduals()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>ignoreResiduals</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;ignoreResiduals()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#ignoreResiduals()">Scan</a></code></span></div>
<div class="block">Create a new scan from this that applies data filtering to files but not to rows in those
files.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#ignoreResiduals()">ignoreResiduals</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a new scan based on this that does not filter rows in files.</dd>
</dl>
</li>
</ul>
<a id="planWith(java.util.concurrent.ExecutorService)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>planWith</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;planWith&#8203;(java.util.concurrent.ExecutorService&nbsp;executorService)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#planWith(java.util.concurrent.ExecutorService)">Scan</a></code></span></div>
<div class="block">Create a new scan to use a particular executor to plan. The default worker pool will be used by
default.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#planWith(java.util.concurrent.ExecutorService)">planWith</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&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>a table scan that uses the provided executor to access manifests</dd>
</dl>
</li>
</ul>
<a id="schema()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>schema</h4>
<pre class="methodSignature">public&nbsp;<a href="Schema.html" title="class in org.apache.iceberg">Schema</a>&nbsp;schema()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#schema()">Scan</a></code></span></div>
<div class="block">Returns this scan's projection <a href="Schema.html" title="class in org.apache.iceberg"><code>Schema</code></a>.
<p>If the projection schema was set directly using <a href="Scan.html#project(org.apache.iceberg.Schema)"><code>Scan.project(Schema)</code></a>, returns that
schema.
<p>If the projection schema was set by calling <a href="Scan.html#select(java.util.Collection)"><code>Scan.select(Collection)</code></a>, returns a
projection schema that includes the selected data fields and any fields used in the filter
expression.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#schema()">schema</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>this scan's projection schema</dd>
</dl>
</li>
</ul>
<a id="splitLookback()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>splitLookback</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;splitLookback()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#splitLookback()">Scan</a></code></span></div>
<div class="block">Returns the split lookback for this scan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#splitLookback()">splitLookback</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
</dl>
</li>
</ul>
<a id="splitOpenFileCost()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>splitOpenFileCost</h4>
<pre class="methodSignature">public&nbsp;long&nbsp;splitOpenFileCost()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#splitOpenFileCost()">Scan</a></code></span></div>
<div class="block">Returns the split open file cost for this scan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#splitOpenFileCost()">splitOpenFileCost</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></dd>
</dl>
</li>
</ul>
<a id="metricsReporter(org.apache.iceberg.metrics.MetricsReporter)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>metricsReporter</h4>
<pre class="methodSignature">public&nbsp;ThisT&nbsp;metricsReporter&#8203;(<a href="metrics/MetricsReporter.html" title="interface in org.apache.iceberg.metrics">MetricsReporter</a>&nbsp;reporter)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="Scan.html#metricsReporter(org.apache.iceberg.metrics.MetricsReporter)">Scan</a></code></span></div>
<div class="block">Create a new scan that will report scan metrics to the provided reporter in addition to
reporters maintained by the scan.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="Scan.html#metricsReporter(org.apache.iceberg.metrics.MetricsReporter)">metricsReporter</a></code>&nbsp;in interface&nbsp;<code><a href="Scan.html" title="interface in org.apache.iceberg">Scan</a>&lt;ThisT,&#8203;T extends <a href="ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>,&#8203;G extends <a href="ScanTaskGroup.html" title="interface in org.apache.iceberg">ScanTaskGroup</a>&lt;T&gt;&gt;</code></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><a href="#field.summary">Field</a>&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><a href="#field.detail">Field</a>&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>