iceberg-cpp
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | Protected Member Functions | List of all members
iceberg::ManifestFileAdapterV3 Class Reference

Adapter to convert V3 ManifestFile to ArrowArray. More...

#include <v3_metadata_internal.h>

Inheritance diagram for iceberg::ManifestFileAdapterV3:
iceberg::ManifestFileAdapter iceberg::ManifestAdapter

Public Member Functions

 ManifestFileAdapterV3 (int64_t snapshot_id, std::optional< int64_t > parent_snapshot_id, int64_t sequence_number, std::optional< int64_t > first_row_id)
 
Status Init () override
 
Status Append (const ManifestFile &file) override
 
std::optional< int64_t > next_row_id () const override
 
- Public Member Functions inherited from iceberg::ManifestFileAdapter
const std::shared_ptr< Schema > & schema () const
 
- Public Member Functions inherited from iceberg::ManifestAdapter
Status StartAppending ()
 
Result< ArrowArray * > FinishAppending ()
 
int64_t size () const
 
const std::unordered_map< std::string, std::string > & metadata () const
 

Static Public Attributes

static const std::shared_ptr< SchemakManifestListSchema
 

Protected Member Functions

Result< int64_t > GetSequenceNumber (const ManifestFile &file) const override
 
Result< int64_t > GetMinSequenceNumber (const ManifestFile &file) const override
 
Result< std::optional< int64_t > > GetFirstRowId (const ManifestFile &file) const override
 
- Protected Member Functions inherited from iceberg::ManifestFileAdapter
Status AppendInternal (const ManifestFile &file)
 

Additional Inherited Members

- Static Protected Member Functions inherited from iceberg::ManifestFileAdapter
static Status AppendPartitionSummary (ArrowArray *array, const std::shared_ptr< ListType > &summary_type, const std::vector< PartitionFieldSummary > &summaries)
 
- Protected Attributes inherited from iceberg::ManifestFileAdapter
std::shared_ptr< Schemamanifest_list_schema_
 
- Protected Attributes inherited from iceberg::ManifestAdapter
ArrowArray array_
 
ArrowSchema schema_
 
int64_t size_ = 0
 
std::unordered_map< std::string, std::string > metadata_
 

Detailed Description

Adapter to convert V3 ManifestFile to ArrowArray.

Member Function Documentation

◆ Append()

Status iceberg::ManifestFileAdapterV3::Append ( const ManifestFile file)
overridevirtual

◆ GetFirstRowId()

Result< std::optional< int64_t > > iceberg::ManifestFileAdapterV3::GetFirstRowId ( const ManifestFile file) const
overrideprotectedvirtual

Reimplemented from iceberg::ManifestFileAdapter.

◆ GetMinSequenceNumber()

Result< int64_t > iceberg::ManifestFileAdapterV3::GetMinSequenceNumber ( const ManifestFile file) const
overrideprotectedvirtual

Reimplemented from iceberg::ManifestFileAdapter.

◆ GetSequenceNumber()

Result< int64_t > iceberg::ManifestFileAdapterV3::GetSequenceNumber ( const ManifestFile file) const
overrideprotectedvirtual

Reimplemented from iceberg::ManifestFileAdapter.

◆ Init()

Status iceberg::ManifestFileAdapterV3::Init ( )
overridevirtual

◆ next_row_id()

std::optional< int64_t > iceberg::ManifestFileAdapterV3::next_row_id ( ) const
inlineoverridevirtual

Reimplemented from iceberg::ManifestFileAdapter.

Member Data Documentation

◆ kManifestListSchema

const std::shared_ptr< Schema > iceberg::ManifestFileAdapterV3::kManifestListSchema
static
Initial value:
=
std::make_shared<Schema>(std::vector<SchemaField>{
ManifestFile::kManifestPath,
ManifestFile::kManifestLength,
ManifestFile::kPartitionSpecId,
ManifestFile::kContent.AsRequired(),
ManifestFile::kSequenceNumber.AsRequired(),
ManifestFile::kMinSequenceNumber.AsRequired(),
ManifestFile::kAddedSnapshotId,
ManifestFile::kAddedFilesCount.AsRequired(),
ManifestFile::kExistingFilesCount.AsRequired(),
ManifestFile::kDeletedFilesCount.AsRequired(),
ManifestFile::kAddedRowsCount.AsRequired(),
ManifestFile::kExistingRowsCount.AsRequired(),
ManifestFile::kDeletedRowsCount.AsRequired(),
ManifestFile::kPartitions,
ManifestFile::kKeyMetadata,
ManifestFile::kFirstRowId,
})

The documentation for this class was generated from the following files: