iceberg-cpp
Loading...
Searching...
No Matches
Functions
manifest_util_internal.h File Reference
#include <cstdint>
#include <memory>
#include <string>
#include "iceberg/iceberg_export.h"
#include "iceberg/result.h"
#include "iceberg/type_fwd.h"

Go to the source code of this file.

Functions

Result< ManifestFileiceberg::CopyAppendManifest (const ManifestFile &manifest, const std::shared_ptr< FileIO > &file_io, const std::shared_ptr< Schema > &schema, const std::shared_ptr< PartitionSpec > &spec, int64_t snapshot_id, const std::string &output_path, int8_t format_version, SnapshotSummaryBuilder *summary_builder=nullptr)
 Copy an append manifest with a new snapshot ID.
 

Detailed Description

Internal utility functions for manifest operations.

Function Documentation

◆ CopyAppendManifest()

ICEBERG_EXPORT Result< ManifestFile > iceberg::CopyAppendManifest ( const ManifestFile manifest,
const std::shared_ptr< FileIO > &  file_io,
const std::shared_ptr< Schema > &  schema,
const std::shared_ptr< PartitionSpec > &  spec,
int64_t  snapshot_id,
const std::string &  output_path,
int8_t  format_version,
SnapshotSummaryBuilder summary_builder = nullptr 
)

Copy an append manifest with a new snapshot ID.

This function copies a manifest file that contains only ADDED entries, rewriting it with a new snapshot ID. This is similar to Java's ManifestFiles.copyAppendManifest.

Parameters
manifestThe manifest file to copy
file_ioFile IO implementation to use
schemaTable schema
specPartition spec for the manifest
snapshot_idThe new snapshot ID to assign to entries
output_pathPath where the new manifest will be written
format_versionTable format version
summary_builderOptional summary builder to update with file metrics
Returns
The copied manifest file, or an error