blob: 97300d39a72690366080fe14fe13f2980c6c61e0 [file] [log] [blame]
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>iceberg-cpp: iceberg::SnapshotUpdate Class Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr id="projectrow">
<td id="projectalign">
<div id="projectname">iceberg-cpp
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><b>iceberg</b></li><li class="navelem"><a class="el" href="classiceberg_1_1SnapshotUpdate.html">SnapshotUpdate</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a> &#124;
<a href="classiceberg_1_1SnapshotUpdate-members.html">List of all members</a> </div>
<div class="headertitle"><div class="title">iceberg::SnapshotUpdate Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div></div>
</div><!--header-->
<div class="contents">
<p>Base class for operations that produce snapshots.
<a href="classiceberg_1_1SnapshotUpdate.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="snapshot__update_8h_source.html">snapshot_update.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for iceberg::SnapshotUpdate:</div>
<div class="dyncontent">
<div class="center">
<img src="classiceberg_1_1SnapshotUpdate.png" usemap="#iceberg::SnapshotUpdate_map" alt=""/>
<map id="iceberg::SnapshotUpdate_map" name="iceberg::SnapshotUpdate_map">
<area href="classiceberg_1_1PendingUpdate.html" title="Base class for all kinds of table metadata updates." alt="iceberg::PendingUpdate" shape="rect" coords="0,56,152,80"/>
<area href="classiceberg_1_1ErrorCollector.html" title="Base class for collecting errors in the builder pattern." alt="iceberg::ErrorCollector" shape="rect" coords="0,0,152,24"/>
<area href="classiceberg_1_1FastAppend.html" title="Appending new files in a table." alt="iceberg::FastAppend" shape="rect" coords="0,168,152,192"/>
</map>
</div></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="nested-classes" name="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiceberg_1_1SnapshotUpdate_1_1ApplyResult.html">ApplyResult</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Result of applying a snapshot update. <a href="structiceberg_1_1SnapshotUpdate_1_1ApplyResult.html#details">More...</a><br /></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-methods" name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:ae194773e0ce37df3780121314322f440" id="r_ae194773e0ce37df3780121314322f440"><td class="memItemLeft" align="right" valign="top">Kind&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#ae194773e0ce37df3780121314322f440">kind</a> () const override</td></tr>
<tr class="memdesc:ae194773e0ce37df3780121314322f440"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the kind of this pending update. <br /></td></tr>
<tr class="separator:ae194773e0ce37df3780121314322f440"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5a84c539ec3c559260b3c6b868943c7" id="r_af5a84c539ec3c559260b3c6b868943c7"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#af5a84c539ec3c559260b3c6b868943c7">DeleteWith</a> (this auto &amp;self, std::function&lt; Status(const std::string &amp;)&gt; delete_func)</td></tr>
<tr class="memdesc:af5a84c539ec3c559260b3c6b868943c7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a callback to delete files instead of the table's default. <br /></td></tr>
<tr class="separator:af5a84c539ec3c559260b3c6b868943c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a43f427fe952631fffdd3c19e0c5ef434" id="r_a43f427fe952631fffdd3c19e0c5ef434"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a43f427fe952631fffdd3c19e0c5ef434">StageOnly</a> (this auto &amp;self)</td></tr>
<tr class="memdesc:a43f427fe952631fffdd3c19e0c5ef434"><td class="mdescLeft">&#160;</td><td class="mdescRight">Stage a snapshot in table metadata, but not update the current snapshot id. <br /></td></tr>
<tr class="separator:a43f427fe952631fffdd3c19e0c5ef434"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54d0274b7b6cc60f212182265c331293" id="r_a54d0274b7b6cc60f212182265c331293"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a54d0274b7b6cc60f212182265c331293">SetTargetBranch</a> (this auto &amp;self, const std::string &amp;branch)</td></tr>
<tr class="memdesc:a54d0274b7b6cc60f212182265c331293"><td class="mdescLeft">&#160;</td><td class="mdescRight">Perform operations on a particular branch. <br /></td></tr>
<tr class="separator:a54d0274b7b6cc60f212182265c331293"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae19b638ceb6b7e57e4096ec943db223b" id="r_ae19b638ceb6b7e57e4096ec943db223b"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#ae19b638ceb6b7e57e4096ec943db223b">Set</a> (this auto &amp;self, const std::string &amp;property, const std::string &amp;value)</td></tr>
<tr class="memdesc:ae19b638ceb6b7e57e4096ec943db223b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Set a summary property. <br /></td></tr>
<tr class="separator:ae19b638ceb6b7e57e4096ec943db223b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a102a35b2c7bab9b1b08f178d1f9bebd7" id="r_a102a35b2c7bab9b1b08f178d1f9bebd7"><td class="memItemLeft" align="right" valign="top">Result&lt; <a class="el" href="structiceberg_1_1SnapshotUpdate_1_1ApplyResult.html">ApplyResult</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a102a35b2c7bab9b1b08f178d1f9bebd7">Apply</a> ()</td></tr>
<tr class="memdesc:a102a35b2c7bab9b1b08f178d1f9bebd7"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply the update's changes to create a new snapshot. <br /></td></tr>
<tr class="separator:a102a35b2c7bab9b1b08f178d1f9bebd7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab8f14ca85eb071b445d235c0ccbbaa10" id="r_ab8f14ca85eb071b445d235c0ccbbaa10"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#ab8f14ca85eb071b445d235c0ccbbaa10">Finalize</a> (std::optional&lt; <a class="el" href="structiceberg_1_1Error.html">Error</a> &gt; commit_error) override</td></tr>
<tr class="memdesc:ab8f14ca85eb071b445d235c0ccbbaa10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Finalize the snapshot update, cleaning up any uncommitted files. <br /></td></tr>
<tr class="separator:ab8f14ca85eb071b445d235c0ccbbaa10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classiceberg_1_1PendingUpdate"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classiceberg_1_1PendingUpdate')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classiceberg_1_1PendingUpdate.html">iceberg::PendingUpdate</a></td></tr>
<tr class="memitem:a4a5df6d83b7a4a3c4dac19a77945be71 inherit pub_methods_classiceberg_1_1PendingUpdate" id="r_a4a5df6d83b7a4a3c4dac19a77945be71"><td class="memItemLeft" align="right" valign="top">virtual Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1PendingUpdate.html#a4a5df6d83b7a4a3c4dac19a77945be71">Commit</a> ()</td></tr>
<tr class="memdesc:a4a5df6d83b7a4a3c4dac19a77945be71 inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply the pending changes and commit. <br /></td></tr>
<tr class="separator:a4a5df6d83b7a4a3c4dac19a77945be71 inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac5c3549e22869ad7f6abd417ffcabbe2 inherit pub_methods_classiceberg_1_1PendingUpdate" id="r_ac5c3549e22869ad7f6abd417ffcabbe2"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>PendingUpdate</b> (const <a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;)=delete</td></tr>
<tr class="separator:ac5c3549e22869ad7f6abd417ffcabbe2 inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3314053bba6a86931feb39c1487e2c8b inherit pub_methods_classiceberg_1_1PendingUpdate" id="r_a3314053bba6a86931feb39c1487e2c8b"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;)=delete</td></tr>
<tr class="separator:a3314053bba6a86931feb39c1487e2c8b inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18521611dee09ce7f85477f38d85e75d inherit pub_methods_classiceberg_1_1PendingUpdate" id="r_a18521611dee09ce7f85477f38d85e75d"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>PendingUpdate</b> (<a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="separator:a18521611dee09ce7f85477f38d85e75d inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e71d56c145591059c7e2f6ee0305295 inherit pub_methods_classiceberg_1_1PendingUpdate" id="r_a9e71d56c145591059c7e2f6ee0305295"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classiceberg_1_1PendingUpdate.html">PendingUpdate</a> &amp;&amp;) noexcept=default</td></tr>
<tr class="separator:a9e71d56c145591059c7e2f6ee0305295 inherit pub_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_classiceberg_1_1ErrorCollector"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classiceberg_1_1ErrorCollector')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="classiceberg_1_1ErrorCollector.html">iceberg::ErrorCollector</a></td></tr>
<tr class="memitem:a827c296a8527f87f76d7f9321e7ee68f inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a827c296a8527f87f76d7f9321e7ee68f"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>ErrorCollector</b> (<a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a827c296a8527f87f76d7f9321e7ee68f inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a22311658715152d8e6e27834240ce446 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a22311658715152d8e6e27834240ce446"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (<a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;&amp;)=default</td></tr>
<tr class="separator:a22311658715152d8e6e27834240ce446 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab3fa546cd2748fe418db9c0933542755 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_ab3fa546cd2748fe418db9c0933542755"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>ErrorCollector</b> (const <a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;)=default</td></tr>
<tr class="separator:ab3fa546cd2748fe418db9c0933542755 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaba366560be481bfa9538735f3a38e3e inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_aaba366560be481bfa9538735f3a38e3e"><td class="memItemLeft" align="right" valign="top">
<a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>operator=</b> (const <a class="el" href="classiceberg_1_1ErrorCollector.html">ErrorCollector</a> &amp;)=default</td></tr>
<tr class="separator:aaba366560be481bfa9538735f3a38e3e inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a20345150b136c918ffe8947a7d75e1 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a3a20345150b136c918ffe8947a7d75e1"><td class="memTemplParams" colspan="2">template&lt;typename... Args&gt; </td></tr>
<tr class="memitem:a3a20345150b136c918ffe8947a7d75e1 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memTemplItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a3a20345150b136c918ffe8947a7d75e1">AddError</a> (this auto &amp;self, ErrorKind kind, const std::format_string&lt; Args... &gt; fmt, Args &amp;&amp;... args)</td></tr>
<tr class="memdesc:a3a20345150b136c918ffe8947a7d75e1 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add a specific error and return reference to derived class. <br /></td></tr>
<tr class="separator:a3a20345150b136c918ffe8947a7d75e1 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e555954de121d0908dcf4648da446e3 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a5e555954de121d0908dcf4648da446e3"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a5e555954de121d0908dcf4648da446e3">AddError</a> (this auto &amp;self, <a class="el" href="structiceberg_1_1Error.html">Error</a> err)</td></tr>
<tr class="memdesc:a5e555954de121d0908dcf4648da446e3 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an existing error object and return reference to derived class. <br /></td></tr>
<tr class="separator:a5e555954de121d0908dcf4648da446e3 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5749264a2234092a5246056a1c72ee51 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a5749264a2234092a5246056a1c72ee51"><td class="memItemLeft" align="right" valign="top">auto &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a5749264a2234092a5246056a1c72ee51">AddError</a> (this auto &amp;self, std::unexpected&lt; <a class="el" href="structiceberg_1_1Error.html">Error</a> &gt; err)</td></tr>
<tr class="memdesc:a5749264a2234092a5246056a1c72ee51 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Add an unexpected result's error and return reference to derived class. <br /></td></tr>
<tr class="separator:a5749264a2234092a5246056a1c72ee51 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8813b3fe2a3cc112e6db19c87b8422ae inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a8813b3fe2a3cc112e6db19c87b8422ae"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a8813b3fe2a3cc112e6db19c87b8422ae">has_errors</a> () const</td></tr>
<tr class="memdesc:a8813b3fe2a3cc112e6db19c87b8422ae inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if any errors have been collected. <br /></td></tr>
<tr class="separator:a8813b3fe2a3cc112e6db19c87b8422ae inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afae10739a78bbffc2609a63e52821195 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_afae10739a78bbffc2609a63e52821195"><td class="memItemLeft" align="right" valign="top">size_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#afae10739a78bbffc2609a63e52821195">error_count</a> () const</td></tr>
<tr class="memdesc:afae10739a78bbffc2609a63e52821195 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the number of errors collected. <br /></td></tr>
<tr class="separator:afae10739a78bbffc2609a63e52821195 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16cbe7b6d423a372c9e68d970ff2c3ea inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a16cbe7b6d423a372c9e68d970ff2c3ea"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a16cbe7b6d423a372c9e68d970ff2c3ea">CheckErrors</a> () const</td></tr>
<tr class="memdesc:a16cbe7b6d423a372c9e68d970ff2c3ea inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check for accumulated errors and return them if any exist. <br /></td></tr>
<tr class="separator:a16cbe7b6d423a372c9e68d970ff2c3ea inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a274df2b90b0c22156a4c339aa30a4401 inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a274df2b90b0c22156a4c339aa30a4401"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1ErrorCollector.html#a274df2b90b0c22156a4c339aa30a4401">ClearErrors</a> ()</td></tr>
<tr class="memdesc:a274df2b90b0c22156a4c339aa30a4401 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear all accumulated errors. <br /></td></tr>
<tr class="separator:a274df2b90b0c22156a4c339aa30a4401 inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a101fb70f2ad50a6023de932dc2eca96c inherit pub_methods_classiceberg_1_1ErrorCollector" id="r_a101fb70f2ad50a6023de932dc2eca96c"><td class="memItemLeft" align="right" valign="top">
const std::vector&lt; <a class="el" href="structiceberg_1_1Error.html">Error</a> &gt; &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>errors</b> () const</td></tr>
<tr class="memdesc:a101fb70f2ad50a6023de932dc2eca96c inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get read-only access to all collected errors. <br /></td></tr>
<tr class="separator:a101fb70f2ad50a6023de932dc2eca96c inherit pub_methods_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-methods" name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:afa840d8e4fac4b35a0e5147ebe0a24bd" id="r_afa840d8e4fac4b35a0e5147ebe0a24bd"><td class="memItemLeft" align="right" valign="top"><a id="afa840d8e4fac4b35a0e5147ebe0a24bd" name="afa840d8e4fac4b35a0e5147ebe0a24bd"></a>
&#160;</td><td class="memItemRight" valign="bottom"><b>SnapshotUpdate</b> (std::shared_ptr&lt; <a class="el" href="classiceberg_1_1TransactionContext.html">TransactionContext</a> &gt; ctx)</td></tr>
<tr class="separator:afa840d8e4fac4b35a0e5147ebe0a24bd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad839a5b6b8cd54ceb3d013ddadae9fc5" id="r_ad839a5b6b8cd54ceb3d013ddadae9fc5"><td class="memItemLeft" align="right" valign="top">Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#ad839a5b6b8cd54ceb3d013ddadae9fc5">WriteDataManifests</a> (std::span&lt; const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &gt; &gt; files, const std::shared_ptr&lt; <a class="el" href="classiceberg_1_1PartitionSpec.html">PartitionSpec</a> &gt; &amp;spec, std::optional&lt; int64_t &gt; data_sequence_number=std::nullopt)</td></tr>
<tr class="memdesc:ad839a5b6b8cd54ceb3d013ddadae9fc5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write data manifests for the given data files. <br /></td></tr>
<tr class="separator:ad839a5b6b8cd54ceb3d013ddadae9fc5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aef931023c233994b7567d1f8d9cc41ac" id="r_aef931023c233994b7567d1f8d9cc41ac"><td class="memItemLeft" align="right" valign="top">Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#aef931023c233994b7567d1f8d9cc41ac">WriteDeleteManifests</a> (std::span&lt; const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &gt; &gt; files, const std::shared_ptr&lt; <a class="el" href="classiceberg_1_1PartitionSpec.html">PartitionSpec</a> &gt; &amp;spec)</td></tr>
<tr class="memdesc:aef931023c233994b7567d1f8d9cc41ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Write delete manifests for the given delete files. <br /></td></tr>
<tr class="separator:aef931023c233994b7567d1f8d9cc41ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1d1956ed16f817a44c0f3f081eb4c5c" id="r_ac1d1956ed16f817a44c0f3f081eb4c5c"><td class="memItemLeft" align="right" valign="top"><a id="ac1d1956ed16f817a44c0f3f081eb4c5c" name="ac1d1956ed16f817a44c0f3f081eb4c5c"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>target_branch</b> () const</td></tr>
<tr class="separator:ac1d1956ed16f817a44c0f3f081eb4c5c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f15ea5399c070c05a401df3427cf4ba" id="r_a0f15ea5399c070c05a401df3427cf4ba"><td class="memItemLeft" align="right" valign="top"><a id="a0f15ea5399c070c05a401df3427cf4ba" name="a0f15ea5399c070c05a401df3427cf4ba"></a>
bool&#160;</td><td class="memItemRight" valign="bottom"><b>can_inherit_snapshot_id</b> () const</td></tr>
<tr class="separator:a0f15ea5399c070c05a401df3427cf4ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a32d03afeb074db14119b5e1f1efcf279" id="r_a32d03afeb074db14119b5e1f1efcf279"><td class="memItemLeft" align="right" valign="top"><a id="a32d03afeb074db14119b5e1f1efcf279" name="a32d03afeb074db14119b5e1f1efcf279"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>commit_uuid</b> () const</td></tr>
<tr class="separator:a32d03afeb074db14119b5e1f1efcf279"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89c7e7a09d3c094859f22b3e50a26ae6" id="r_a89c7e7a09d3c094859f22b3e50a26ae6"><td class="memItemLeft" align="right" valign="top"><a id="a89c7e7a09d3c094859f22b3e50a26ae6" name="a89c7e7a09d3c094859f22b3e50a26ae6"></a>
int32_t&#160;</td><td class="memItemRight" valign="bottom"><b>manifest_count</b> () const</td></tr>
<tr class="separator:a89c7e7a09d3c094859f22b3e50a26ae6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d049f4c752864f55d75ece4b6119a48" id="r_a7d049f4c752864f55d75ece4b6119a48"><td class="memItemLeft" align="right" valign="top"><a id="a7d049f4c752864f55d75ece4b6119a48" name="a7d049f4c752864f55d75ece4b6119a48"></a>
int32_t&#160;</td><td class="memItemRight" valign="bottom"><b>attempt</b> () const</td></tr>
<tr class="separator:a7d049f4c752864f55d75ece4b6119a48"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe2bd4f83fb5d90e70bfff6d1f28a40b" id="r_abe2bd4f83fb5d90e70bfff6d1f28a40b"><td class="memItemLeft" align="right" valign="top"><a id="abe2bd4f83fb5d90e70bfff6d1f28a40b" name="abe2bd4f83fb5d90e70bfff6d1f28a40b"></a>
int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>target_manifest_size_bytes</b> () const</td></tr>
<tr class="separator:abe2bd4f83fb5d90e70bfff6d1f28a40b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a582e2766881ada1c8d07aa0c738449e6" id="r_a582e2766881ada1c8d07aa0c738449e6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a582e2766881ada1c8d07aa0c738449e6">CleanUncommitted</a> (const std::unordered_set&lt; std::string &gt; &amp;committed)=0</td></tr>
<tr class="memdesc:a582e2766881ada1c8d07aa0c738449e6"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clean up any uncommitted manifests that were created. <br /></td></tr>
<tr class="separator:a582e2766881ada1c8d07aa0c738449e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7e5cb52a426032eebf3b602b5674c5e0" id="r_a7e5cb52a426032eebf3b602b5674c5e0"><td class="memItemLeft" align="right" valign="top">virtual std::string&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a7e5cb52a426032eebf3b602b5674c5e0">operation</a> ()=0</td></tr>
<tr class="memdesc:a7e5cb52a426032eebf3b602b5674c5e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">A string that describes the action that produced the new snapshot. <br /></td></tr>
<tr class="separator:a7e5cb52a426032eebf3b602b5674c5e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa2d22d7708df6b17bfa53e40abb32f86" id="r_aa2d22d7708df6b17bfa53e40abb32f86"><td class="memItemLeft" align="right" valign="top">virtual Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#aa2d22d7708df6b17bfa53e40abb32f86">Validate</a> (const <a class="el" href="structiceberg_1_1TableMetadata.html">TableMetadata</a> &amp;current_metadata, const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1Snapshot.html">Snapshot</a> &gt; &amp;snapshot)</td></tr>
<tr class="memdesc:aa2d22d7708df6b17bfa53e40abb32f86"><td class="mdescLeft">&#160;</td><td class="mdescRight">Validate the current metadata. <br /></td></tr>
<tr class="separator:aa2d22d7708df6b17bfa53e40abb32f86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0d1e461184dd3aa553269ef736202ced" id="r_a0d1e461184dd3aa553269ef736202ced"><td class="memItemLeft" align="right" valign="top">virtual Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a0d1e461184dd3aa553269ef736202ced">Apply</a> (const <a class="el" href="structiceberg_1_1TableMetadata.html">TableMetadata</a> &amp;metadata_to_update, const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1Snapshot.html">Snapshot</a> &gt; &amp;snapshot)=0</td></tr>
<tr class="memdesc:a0d1e461184dd3aa553269ef736202ced"><td class="mdescLeft">&#160;</td><td class="mdescRight">Apply the update's changes to the given metadata and snapshot. <br /></td></tr>
<tr class="separator:a0d1e461184dd3aa553269ef736202ced"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a193bc595ce86911870731a8eebf5950e" id="r_a193bc595ce86911870731a8eebf5950e"><td class="memItemLeft" align="right" valign="top">virtual std::unordered_map&lt; std::string, std::string &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#a193bc595ce86911870731a8eebf5950e">Summary</a> ()=0</td></tr>
<tr class="memdesc:a193bc595ce86911870731a8eebf5950e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the summary map for this operation. <br /></td></tr>
<tr class="separator:a193bc595ce86911870731a8eebf5950e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb89f2ceb3a0fb2abfba3faa6a32e5ac" id="r_aeb89f2ceb3a0fb2abfba3faa6a32e5ac"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#aeb89f2ceb3a0fb2abfba3faa6a32e5ac">CleanupAfterCommit</a> () const</td></tr>
<tr class="memdesc:aeb89f2ceb3a0fb2abfba3faa6a32e5ac"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if cleanup should happen after commit. <br /></td></tr>
<tr class="separator:aeb89f2ceb3a0fb2abfba3faa6a32e5ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aae99085da77d04a9314e8c4773cfb731" id="r_aae99085da77d04a9314e8c4773cfb731"><td class="memItemLeft" align="right" valign="top"><a id="aae99085da77d04a9314e8c4773cfb731" name="aae99085da77d04a9314e8c4773cfb731"></a>
int64_t&#160;</td><td class="memItemRight" valign="bottom"><b>SnapshotId</b> ()</td></tr>
<tr class="memdesc:aae99085da77d04a9314e8c4773cfb731"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get or generate the snapshot ID for the new snapshot. <br /></td></tr>
<tr class="separator:aae99085da77d04a9314e8c4773cfb731"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9fc2b6a382fb3c9c9f8e30056d1f7de" id="r_af9fc2b6a382fb3c9c9f8e30056d1f7de"><td class="memItemLeft" align="right" valign="top">Status&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classiceberg_1_1SnapshotUpdate.html#af9fc2b6a382fb3c9c9f8e30056d1f7de">DeleteFile</a> (const std::string &amp;path)</td></tr>
<tr class="memdesc:af9fc2b6a382fb3c9c9f8e30056d1f7de"><td class="mdescLeft">&#160;</td><td class="mdescRight">Delete a file at the given path. <br /></td></tr>
<tr class="separator:af9fc2b6a382fb3c9c9f8e30056d1f7de"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af474cf9191b5a05ea99ed8d9c01bbda0" id="r_af474cf9191b5a05ea99ed8d9c01bbda0"><td class="memItemLeft" align="right" valign="top"><a id="af474cf9191b5a05ea99ed8d9c01bbda0" name="af474cf9191b5a05ea99ed8d9c01bbda0"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>ManifestPath</b> ()</td></tr>
<tr class="separator:af474cf9191b5a05ea99ed8d9c01bbda0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0478c16b077f60262329f50bb606746e" id="r_a0478c16b077f60262329f50bb606746e"><td class="memItemLeft" align="right" valign="top"><a id="a0478c16b077f60262329f50bb606746e" name="a0478c16b077f60262329f50bb606746e"></a>
std::string&#160;</td><td class="memItemRight" valign="bottom"><b>ManifestListPath</b> ()</td></tr>
<tr class="separator:a0478c16b077f60262329f50bb606746e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a89096f41f8602f1d05f6bddc06c9d8e6" id="r_a89096f41f8602f1d05f6bddc06c9d8e6"><td class="memItemLeft" align="right" valign="top"><a id="a89096f41f8602f1d05f6bddc06c9d8e6" name="a89096f41f8602f1d05f6bddc06c9d8e6"></a>
<a class="el" href="classiceberg_1_1SnapshotSummaryBuilder.html">SnapshotSummaryBuilder</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>summary_builder</b> ()</td></tr>
<tr class="separator:a89096f41f8602f1d05f6bddc06c9d8e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_classiceberg_1_1PendingUpdate"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_classiceberg_1_1PendingUpdate')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="classiceberg_1_1PendingUpdate.html">iceberg::PendingUpdate</a></td></tr>
<tr class="memitem:a1bc9b1eb7bfa1c832c65331b2e6bba6f inherit pro_methods_classiceberg_1_1PendingUpdate" id="r_a1bc9b1eb7bfa1c832c65331b2e6bba6f"><td class="memItemLeft" align="right" valign="top">
&#160;</td><td class="memItemRight" valign="bottom"><b>PendingUpdate</b> (std::shared_ptr&lt; <a class="el" href="classiceberg_1_1TransactionContext.html">TransactionContext</a> &gt; ctx)</td></tr>
<tr class="separator:a1bc9b1eb7bfa1c832c65331b2e6bba6f inherit pro_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a93721051561748b1a29e75b7d4cbbd86 inherit pro_methods_classiceberg_1_1PendingUpdate" id="r_a93721051561748b1a29e75b7d4cbbd86"><td class="memItemLeft" align="right" valign="top">
const <a class="el" href="structiceberg_1_1TableMetadata.html">TableMetadata</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>base</b> () const</td></tr>
<tr class="separator:a93721051561748b1a29e75b7d4cbbd86 inherit pro_methods_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pro-attribs" name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr class="memitem:a169ac960678daaef3ef8cc793f47d1a3" id="r_a169ac960678daaef3ef8cc793f47d1a3"><td class="memItemLeft" align="right" valign="top"><a id="a169ac960678daaef3ef8cc793f47d1a3" name="a169ac960678daaef3ef8cc793f47d1a3"></a>
<a class="el" href="classiceberg_1_1SnapshotSummaryBuilder.html">SnapshotSummaryBuilder</a>&#160;</td><td class="memItemRight" valign="bottom"><b>summary_</b></td></tr>
<tr class="separator:a169ac960678daaef3ef8cc793f47d1a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classiceberg_1_1PendingUpdate"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classiceberg_1_1PendingUpdate')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classiceberg_1_1PendingUpdate.html">iceberg::PendingUpdate</a></td></tr>
<tr class="memitem:a48306a581b00f16c85af172a41b7dcee inherit pro_attribs_classiceberg_1_1PendingUpdate" id="r_a48306a581b00f16c85af172a41b7dcee"><td class="memItemLeft" align="right" valign="top">
std::shared_ptr&lt; <a class="el" href="classiceberg_1_1TransactionContext.html">TransactionContext</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>ctx_</b></td></tr>
<tr class="separator:a48306a581b00f16c85af172a41b7dcee inherit pro_attribs_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_classiceberg_1_1ErrorCollector"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classiceberg_1_1ErrorCollector')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classiceberg_1_1ErrorCollector.html">iceberg::ErrorCollector</a></td></tr>
<tr class="memitem:a354d1e7287bb45926a4b563f80d0c623 inherit pro_attribs_classiceberg_1_1ErrorCollector" id="r_a354d1e7287bb45926a4b563f80d0c623"><td class="memItemLeft" align="right" valign="top">
std::vector&lt; <a class="el" href="structiceberg_1_1Error.html">Error</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><b>errors_</b></td></tr>
<tr class="separator:a354d1e7287bb45926a4b563f80d0c623 inherit pro_attribs_classiceberg_1_1ErrorCollector"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="inherited" name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_types_classiceberg_1_1PendingUpdate"><td colspan="2" onclick="javascript:toggleInherit('pub_types_classiceberg_1_1PendingUpdate')"><img src="closed.png" alt="-"/>&#160;Public Types inherited from <a class="el" href="classiceberg_1_1PendingUpdate.html">iceberg::PendingUpdate</a></td></tr>
<tr class="memitem:a5bac3f32c6a0790ba222399fed5c1944 inherit pub_types_classiceberg_1_1PendingUpdate" id="r_a5bac3f32c6a0790ba222399fed5c1944"><td class="memItemLeft" align="right" valign="top"><a id="a5bac3f32c6a0790ba222399fed5c1944" name="a5bac3f32c6a0790ba222399fed5c1944"></a>enum class &#160;</td><td class="memItemRight" valign="bottom"><b>Kind</b> : uint8_t { <br />
&#160;&#160;<b>kExpireSnapshots</b>
, <b>kSetSnapshot</b>
, <b>kUpdateLocation</b>
, <b>kUpdatePartitionSpec</b>
, <br />
&#160;&#160;<b>kUpdatePartitionStatistics</b>
, <b>kUpdateProperties</b>
, <b>kUpdateSchema</b>
, <b>kUpdateSnapshot</b>
, <br />
&#160;&#160;<b>kUpdateSnapshotReference</b>
, <b>kUpdateSortOrder</b>
, <b>kUpdateStatistics</b>
<br />
}</td></tr>
<tr class="separator:a5bac3f32c6a0790ba222399fed5c1944 inherit pub_types_classiceberg_1_1PendingUpdate"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>Base class for operations that produce snapshots. </p>
<p>This class provides common functionality for creating new snapshots, including manifest list writing and cleanup. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a102a35b2c7bab9b1b08f178d1f9bebd7" name="a102a35b2c7bab9b1b08f178d1f9bebd7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a102a35b2c7bab9b1b08f178d1f9bebd7">&#9670;&#160;</a></span>Apply() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">Result&lt; <a class="el" href="structiceberg_1_1SnapshotUpdate_1_1ApplyResult.html">SnapshotUpdate::ApplyResult</a> &gt; iceberg::SnapshotUpdate::Apply </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Apply the update's changes to create a new snapshot. </p>
<p>This method validates the changes, applies them to the metadata, and creates a new snapshot without committing it. The snapshot is stored internally and can be accessed after <a class="el" href="classiceberg_1_1SnapshotUpdate.html#a102a35b2c7bab9b1b08f178d1f9bebd7" title="Apply the update&#39;s changes to create a new snapshot.">Apply()</a> succeeds.</p>
<dl class="section return"><dt>Returns</dt><dd>A result containing the new snapshot, or an error </dd></dl>
</div>
</div>
<a id="a0d1e461184dd3aa553269ef736202ced" name="a0d1e461184dd3aa553269ef736202ced"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0d1e461184dd3aa553269ef736202ced">&#9670;&#160;</a></span>Apply() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt; iceberg::SnapshotUpdate::Apply </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structiceberg_1_1TableMetadata.html">TableMetadata</a> &amp;&#160;</td>
<td class="paramname"><em>metadata_to_update</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1Snapshot.html">Snapshot</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>snapshot</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Apply the update's changes to the given metadata and snapshot. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">metadata_to_update</td><td>The base table metadata to apply changes to </td></tr>
<tr><td class="paramname">snapshot</td><td><a class="el" href="structiceberg_1_1Snapshot.html" title="A snapshot of the data in a table at a point in time.">Snapshot</a> to apply the changes to </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A vector of manifest files for the new snapshot </dd></dl>
<p>Implemented in <a class="el" href="classiceberg_1_1FastAppend.html#a691e82a1c468881b3774a5e4abc12e58">iceberg::FastAppend</a>.</p>
</div>
</div>
<a id="a582e2766881ada1c8d07aa0c738449e6" name="a582e2766881ada1c8d07aa0c738449e6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a582e2766881ada1c8d07aa0c738449e6">&#9670;&#160;</a></span>CleanUncommitted()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void iceberg::SnapshotUpdate::CleanUncommitted </td>
<td>(</td>
<td class="paramtype">const std::unordered_set&lt; std::string &gt; &amp;&#160;</td>
<td class="paramname"><em>committed</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Clean up any uncommitted manifests that were created. </p>
<p>Manifests may not be committed if Apply is called multiple times because a commit conflict has occurred. Implementations may keep around manifests because the same changes will be made by both Apply calls. This method instructs the implementation to clean up those manifests and passes the paths of the manifests that were actually committed.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">committed</td><td>A set of manifest paths that were actually committed </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="classiceberg_1_1FastAppend.html#affc364f0cc816c7a91e2be173759ce2a">iceberg::FastAppend</a>.</p>
</div>
</div>
<a id="aeb89f2ceb3a0fb2abfba3faa6a32e5ac" name="aeb89f2ceb3a0fb2abfba3faa6a32e5ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb89f2ceb3a0fb2abfba3faa6a32e5ac">&#9670;&#160;</a></span>CleanupAfterCommit()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool iceberg::SnapshotUpdate::CleanupAfterCommit </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Check if cleanup should happen after commit. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classiceberg_1_1True.html" title="An Expression that is always true.">True</a> if cleanup should happen after commit </dd></dl>
<p>Reimplemented in <a class="el" href="classiceberg_1_1FastAppend.html#a2b64487db1d9c6a252787504dbb9cb87">iceberg::FastAppend</a>.</p>
</div>
</div>
<a id="af9fc2b6a382fb3c9c9f8e30056d1f7de" name="af9fc2b6a382fb3c9c9f8e30056d1f7de"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9fc2b6a382fb3c9c9f8e30056d1f7de">&#9670;&#160;</a></span>DeleteFile()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Status iceberg::SnapshotUpdate::DeleteFile </td>
<td>(</td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>path</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Delete a file at the given path. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">path</td><td>The path of the file to delete </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A status indicating the result of the deletion </dd></dl>
</div>
</div>
<a id="af5a84c539ec3c559260b3c6b868943c7" name="af5a84c539ec3c559260b3c6b868943c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5a84c539ec3c559260b3c6b868943c7">&#9670;&#160;</a></span>DeleteWith()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto &amp; iceberg::SnapshotUpdate::DeleteWith </td>
<td>(</td>
<td class="paramtype">this auto &amp;&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::function&lt; Status(const std::string &amp;)&gt;&#160;</td>
<td class="paramname"><em>delete_func</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set a callback to delete files instead of the table's default. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">delete_func</td><td>A function used to delete file locations </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classiceberg_1_1Reference.html" title="A reference represents a named field in an expression.">Reference</a> to this for method chaining </dd></dl>
<dl class="section note"><dt>Note</dt><dd>Cannot be called more than once </dd></dl>
</div>
</div>
<a id="ab8f14ca85eb071b445d235c0ccbbaa10" name="ab8f14ca85eb071b445d235c0ccbbaa10"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab8f14ca85eb071b445d235c0ccbbaa10">&#9670;&#160;</a></span>Finalize()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Status iceberg::SnapshotUpdate::Finalize </td>
<td>(</td>
<td class="paramtype">std::optional&lt; <a class="el" href="structiceberg_1_1Error.html">Error</a> &gt;&#160;</td>
<td class="paramname"><em>commit_error</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Finalize the snapshot update, cleaning up any uncommitted files. </p>
<p>Reimplemented from <a class="el" href="classiceberg_1_1PendingUpdate.html#a22441dbf2867204cb175300075e50db9">iceberg::PendingUpdate</a>.</p>
</div>
</div>
<a id="ae194773e0ce37df3780121314322f440" name="ae194773e0ce37df3780121314322f440"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae194773e0ce37df3780121314322f440">&#9670;&#160;</a></span>kind()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Kind iceberg::SnapshotUpdate::kind </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">override</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Return the kind of this pending update. </p>
<p>Implements <a class="el" href="classiceberg_1_1PendingUpdate.html#a33fba65ffa4a85fd7c5b9984cb892812">iceberg::PendingUpdate</a>.</p>
</div>
</div>
<a id="a7e5cb52a426032eebf3b602b5674c5e0" name="a7e5cb52a426032eebf3b602b5674c5e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7e5cb52a426032eebf3b602b5674c5e0">&#9670;&#160;</a></span>operation()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual std::string iceberg::SnapshotUpdate::operation </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>A string that describes the action that produced the new snapshot. </p>
<dl class="section return"><dt>Returns</dt><dd>A string operation name </dd></dl>
<p>Implemented in <a class="el" href="classiceberg_1_1FastAppend.html#af48f453a28ecdbab15e2248fd087f6ef">iceberg::FastAppend</a>.</p>
</div>
</div>
<a id="ae19b638ceb6b7e57e4096ec943db223b" name="ae19b638ceb6b7e57e4096ec943db223b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae19b638ceb6b7e57e4096ec943db223b">&#9670;&#160;</a></span>Set()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto &amp; iceberg::SnapshotUpdate::Set </td>
<td>(</td>
<td class="paramtype">this auto &amp;&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>property</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>value</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Set a summary property. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">property</td><td>The property name </td></tr>
<tr><td class="paramname">value</td><td>The property value </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classiceberg_1_1Reference.html" title="A reference represents a named field in an expression.">Reference</a> to this for method chaining </dd></dl>
</div>
</div>
<a id="a54d0274b7b6cc60f212182265c331293" name="a54d0274b7b6cc60f212182265c331293"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a54d0274b7b6cc60f212182265c331293">&#9670;&#160;</a></span>SetTargetBranch()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto &amp; iceberg::SnapshotUpdate::SetTargetBranch </td>
<td>(</td>
<td class="paramtype">this auto &amp;&#160;</td>
<td class="paramname"><em>self</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::string &amp;&#160;</td>
<td class="paramname"><em>branch</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Perform operations on a particular branch. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">branch</td><td>Which is name of <a class="el" href="structiceberg_1_1SnapshotRef.html" title="A reference to a snapshot, either a branch or a tag.">SnapshotRef</a> of type branch </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classiceberg_1_1Reference.html" title="A reference represents a named field in an expression.">Reference</a> to this for method chaining </dd></dl>
</div>
</div>
<a id="a43f427fe952631fffdd3c19e0c5ef434" name="a43f427fe952631fffdd3c19e0c5ef434"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a43f427fe952631fffdd3c19e0c5ef434">&#9670;&#160;</a></span>StageOnly()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">auto &amp; iceberg::SnapshotUpdate::StageOnly </td>
<td>(</td>
<td class="paramtype">this auto &amp;&#160;</td>
<td class="paramname"><em>self</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Stage a snapshot in table metadata, but not update the current snapshot id. </p>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="classiceberg_1_1Reference.html" title="A reference represents a named field in an expression.">Reference</a> to this for method chaining </dd></dl>
</div>
</div>
<a id="a193bc595ce86911870731a8eebf5950e" name="a193bc595ce86911870731a8eebf5950e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a193bc595ce86911870731a8eebf5950e">&#9670;&#160;</a></span>Summary()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual std::unordered_map&lt; std::string, std::string &gt; iceberg::SnapshotUpdate::Summary </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the summary map for this operation. </p>
<dl class="section return"><dt>Returns</dt><dd>A map of summary properties </dd></dl>
<p>Implemented in <a class="el" href="classiceberg_1_1FastAppend.html#a3178b3edb1295fc08504fbd7df5f2b13">iceberg::FastAppend</a>.</p>
</div>
</div>
<a id="aa2d22d7708df6b17bfa53e40abb32f86" name="aa2d22d7708df6b17bfa53e40abb32f86"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa2d22d7708df6b17bfa53e40abb32f86">&#9670;&#160;</a></span>Validate()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual Status iceberg::SnapshotUpdate::Validate </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="structiceberg_1_1TableMetadata.html">TableMetadata</a> &amp;&#160;</td>
<td class="paramname"><em>current_metadata</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1Snapshot.html">Snapshot</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>snapshot</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Validate the current metadata. </p>
<p>Child operations can override this to add custom validation.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">current_metadata</td><td>Current table metadata to validate </td></tr>
<tr><td class="paramname">snapshot</td><td>Ending snapshot on the lineage which is being validated </td></tr>
</table>
</dd>
</dl>
</div>
</div>
<a id="ad839a5b6b8cd54ceb3d013ddadae9fc5" name="ad839a5b6b8cd54ceb3d013ddadae9fc5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad839a5b6b8cd54ceb3d013ddadae9fc5">&#9670;&#160;</a></span>WriteDataManifests()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt; iceberg::SnapshotUpdate::WriteDataManifests </td>
<td>(</td>
<td class="paramtype">std::span&lt; const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &gt; &gt;&#160;</td>
<td class="paramname"><em>files</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classiceberg_1_1PartitionSpec.html">PartitionSpec</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>spec</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">std::optional&lt; int64_t &gt;&#160;</td>
<td class="paramname"><em>data_sequence_number</em> = <code>std::nullopt</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write data manifests for the given data files. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">files</td><td>Data files to write </td></tr>
<tr><td class="paramname">spec</td><td>The partition spec to use </td></tr>
<tr><td class="paramname">data_sequence_number</td><td>Optional data sequence number for the files </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A vector of manifest files </dd></dl>
</div>
</div>
<a id="aef931023c233994b7567d1f8d9cc41ac" name="aef931023c233994b7567d1f8d9cc41ac"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aef931023c233994b7567d1f8d9cc41ac">&#9670;&#160;</a></span>WriteDeleteManifests()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">Result&lt; std::vector&lt; <a class="el" href="structiceberg_1_1ManifestFile.html">ManifestFile</a> &gt; &gt; iceberg::SnapshotUpdate::WriteDeleteManifests </td>
<td>(</td>
<td class="paramtype">std::span&lt; const std::shared_ptr&lt; <a class="el" href="structiceberg_1_1DataFile.html">DataFile</a> &gt; &gt;&#160;</td>
<td class="paramname"><em>files</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const std::shared_ptr&lt; <a class="el" href="classiceberg_1_1PartitionSpec.html">PartitionSpec</a> &gt; &amp;&#160;</td>
<td class="paramname"><em>spec</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Write delete manifests for the given delete files. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">files</td><td>Delete files to write </td></tr>
<tr><td class="paramname">spec</td><td>The partition spec to use </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>A vector of manifest files </dd></dl>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>iceberg/update/<a class="el" href="snapshot__update_8h_source.html">snapshot_update.h</a></li>
<li>iceberg/update/<b>snapshot_update.cc</b></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>