blob: c20520976be4ded6b058ebe5ca8acebb9b8decf8 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>DeletedDataFileScanTask</title>
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DeletedDataFileScanTask";
}
}
catch(err) {
}
//-->
var methods = {"i0":6,"i1":18,"i2":18,"i3":18};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],16:["t5","Default Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/iceberg/DataTask.html" title="interface in org.apache.iceberg"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/iceberg/DeletedRowsScanTask.html" title="interface in org.apache.iceberg"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/iceberg/DeletedDataFileScanTask.html" target="_top">Frames</a></li>
<li><a href="DeletedDataFileScanTask.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&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 name="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.iceberg</div>
<h2 title="Interface DeletedDataFileScanTask" class="title">Interface DeletedDataFileScanTask</h2>
</div>
<div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Superinterfaces:</dt>
<dd><a href="../../../org/apache/iceberg/ChangelogScanTask.html" title="interface in org.apache.iceberg">ChangelogScanTask</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="../../../org/apache/iceberg/DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;, <a href="../../../org/apache/iceberg/PartitionScanTask.html" title="interface in org.apache.iceberg">PartitionScanTask</a>, <a href="../../../org/apache/iceberg/ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a>, java.io.Serializable</dd>
</dl>
<hr>
<br>
<pre>public interface <span class="typeNameLabel">DeletedDataFileScanTask</span>
extends <a href="../../../org/apache/iceberg/ChangelogScanTask.html" title="interface in org.apache.iceberg">ChangelogScanTask</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="../../../org/apache/iceberg/DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</pre>
<div class="block">A scan task for deletes generated by removing a data file from the table.
<p>Note that all historical delete files added earlier must be applied while reading the data
file. This is required to output only those data records that were live when the data file was
removed.
<p>Suppose snapshot S1 contains data files F1, F2, F3. Then snapshot S2 adds a position delete
file, D1, that deletes records from F2 and snapshot S3 removes F2 entirely. A scan for changes
generated by S3 should include the following task:
<ul>
<li>DeletedDataFileScanTask(file=F2, existing-deletes=[D1], snapshot=S3)
</ul>
<p>Readers consuming these tasks should produce deleted records with metadata like change ordinal
and commit snapshot ID.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&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="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t5" class="tableTab"><span><a href="javascript:show(16);">Default Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>java.util.List&lt;<a href="../../../org/apache/iceberg/DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/iceberg/DeletedDataFileScanTask.html#existingDeletes--">existingDeletes</a></span>()</code>
<div class="block">A list of previously added <a href="../../../org/apache/iceberg/DeleteFile.html" title="interface in org.apache.iceberg"><code>delete files</code></a> to apply when reading the data file
in this task.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>default int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/iceberg/DeletedDataFileScanTask.html#filesCount--">filesCount</a></span>()</code>
<div class="block">The number of files that will be opened by this scan task.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>default <a href="../../../org/apache/iceberg/ChangelogOperation.html" title="enum in org.apache.iceberg">ChangelogOperation</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/iceberg/DeletedDataFileScanTask.html#operation--">operation</a></span>()</code>
<div class="block">Returns the type of changes produced by this task (i.e.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>default long</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/apache/iceberg/DeletedDataFileScanTask.html#sizeBytes--">sizeBytes</a></span>()</code>
<div class="block">The number of bytes that should be read by this scan task.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.iceberg.ChangelogScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="../../../org/apache/iceberg/ChangelogScanTask.html" title="interface in org.apache.iceberg">ChangelogScanTask</a></h3>
<code><a href="../../../org/apache/iceberg/ChangelogScanTask.html#changeOrdinal--">changeOrdinal</a>, <a href="../../../org/apache/iceberg/ChangelogScanTask.html#commitSnapshotId--">commitSnapshotId</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.iceberg.ContentScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="../../../org/apache/iceberg/ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a></h3>
<code><a href="../../../org/apache/iceberg/ContentScanTask.html#estimatedRowsCount--">estimatedRowsCount</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html#file--">file</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html#length--">length</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html#partition--">partition</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html#residual--">residual</a>, <a href="../../../org/apache/iceberg/ContentScanTask.html#start--">start</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.iceberg.PartitionScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="../../../org/apache/iceberg/PartitionScanTask.html" title="interface in org.apache.iceberg">PartitionScanTask</a></h3>
<code><a href="../../../org/apache/iceberg/PartitionScanTask.html#spec--">spec</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.iceberg.ScanTask">
<!-- -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.iceberg.<a href="../../../org/apache/iceberg/ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a></h3>
<code><a href="../../../org/apache/iceberg/ScanTask.html#asCombinedScanTask--">asCombinedScanTask</a>, <a href="../../../org/apache/iceberg/ScanTask.html#asDataTask--">asDataTask</a>, <a href="../../../org/apache/iceberg/ScanTask.html#asFileScanTask--">asFileScanTask</a>, <a href="../../../org/apache/iceberg/ScanTask.html#isDataTask--">isDataTask</a>, <a href="../../../org/apache/iceberg/ScanTask.html#isFileScanTask--">isFileScanTask</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="existingDeletes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>existingDeletes</h4>
<pre>java.util.List&lt;<a href="../../../org/apache/iceberg/DeleteFile.html" title="interface in org.apache.iceberg">DeleteFile</a>&gt;&nbsp;existingDeletes()</pre>
<div class="block">A list of previously added <a href="../../../org/apache/iceberg/DeleteFile.html" title="interface in org.apache.iceberg"><code>delete files</code></a> to apply when reading the data file
in this task.</div>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a list of delete files to apply</dd>
</dl>
</li>
</ul>
<a name="operation--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>operation</h4>
<pre>default&nbsp;<a href="../../../org/apache/iceberg/ChangelogOperation.html" title="enum in org.apache.iceberg">ChangelogOperation</a>&nbsp;operation()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/iceberg/ChangelogScanTask.html#operation--">ChangelogScanTask</a></code></span></div>
<div class="block">Returns the type of changes produced by this task (i.e. insert/delete).</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/iceberg/ChangelogScanTask.html#operation--">operation</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/iceberg/ChangelogScanTask.html" title="interface in org.apache.iceberg">ChangelogScanTask</a></code></dd>
</dl>
</li>
</ul>
<a name="sizeBytes--">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>sizeBytes</h4>
<pre>default&nbsp;long&nbsp;sizeBytes()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/iceberg/ScanTask.html#sizeBytes--">ScanTask</a></code></span></div>
<div class="block">The number of bytes that should be read by this scan task.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/iceberg/ContentScanTask.html#sizeBytes--">sizeBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/iceberg/ContentScanTask.html" title="interface in org.apache.iceberg">ContentScanTask</a>&lt;<a href="../../../org/apache/iceberg/DataFile.html" title="interface in org.apache.iceberg">DataFile</a>&gt;</code></dd>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/iceberg/ScanTask.html#sizeBytes--">sizeBytes</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/iceberg/ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the total number of bytes to read</dd>
</dl>
</li>
</ul>
<a name="filesCount--">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>filesCount</h4>
<pre>default&nbsp;int&nbsp;filesCount()</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../../org/apache/iceberg/ScanTask.html#filesCount--">ScanTask</a></code></span></div>
<div class="block">The number of files that will be opened by this scan task.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../org/apache/iceberg/ScanTask.html#filesCount--">filesCount</a></code>&nbsp;in interface&nbsp;<code><a href="../../../org/apache/iceberg/ScanTask.html" title="interface in org.apache.iceberg">ScanTask</a></code></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the number of files to open</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../org/apache/iceberg/DataTask.html" title="interface in org.apache.iceberg"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../../org/apache/iceberg/DeletedRowsScanTask.html" title="interface in org.apache.iceberg"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?org/apache/iceberg/DeletedDataFileScanTask.html" target="_top">Frames</a></li>
<li><a href="DeletedDataFileScanTask.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.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>
</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 name="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>