wgtmac commented on code in PR #281:
URL: https://github.com/apache/iceberg-cpp/pull/281#discussion_r2484858388
##########
src/iceberg/transaction.h:
##########
@@ -42,12 +44,23 @@ class ICEBERG_EXPORT Transaction {
/// \return a new AppendFiles
virtual std::shared_ptr<AppendFiles> NewAppend() = 0;
+ /// \brief Apply multiple metadata updates to this transaction
+ ///
+ /// \param requirements the table requirements to validate
+ /// \param updates the table updates to apply
+ /// \return Status::OK if all updates were queued successfully
+ virtual Status UpdateTable(
+ const std::vector<std::unique_ptr<TableRequirement>>& requirements,
+ std::vector<std::unique_ptr<TableUpdate>> updates) = 0;
+
/// \brief Apply the pending changes from all actions and commit
///
- /// May throw ValidationException if any update cannot be applied to the
current table
- /// metadata. May throw CommitFailedException if the updates cannot be
committed due to
- /// conflicts.
- virtual void CommitTransaction() = 0;
Review Comment:
I think we can break any existing API before 1.0.0. We just released 0.1.0 a
while ago and I don't think it is ready for production yet.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]