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

A scan task for reading changelog entries between snapshots. More...

#include <table_scan.h>

Inheritance diagram for iceberg::ChangelogScanTask:
iceberg::ScanTask iceberg::AddedRowsScanTask iceberg::DeletedDataFileScanTask

Public Member Functions

 ChangelogScanTask (int32_t change_ordinal, int64_t commit_snapshot_id, std::shared_ptr< DataFile > data_file, std::vector< std::shared_ptr< DataFile > > delete_files={}, std::shared_ptr< Expression > residual_filter=nullptr)
 Construct an AddedRowsScanTask.
 
Kind kind () const override
 The kind of scan task.
 
int64_t size_bytes () const override
 The number of bytes that should be read by this scan task.
 
int32_t files_count () const override
 The number of files that should be read by this scan task.
 
int64_t estimated_row_count () const override
 The number of rows that should be read by this scan task.
 
virtual ChangelogOperation operation () const =0
 
int32_t change_ordinal () const
 The position of this change in the changelog order (0-based).
 
int64_t commit_snapshot_id () const
 The snapshot ID that committed this change.
 
const std::shared_ptr< Expression > & residual_filter () const
 Residual filter to apply after reading.
 

Protected Attributes

int32_t change_ordinal_
 
int64_t commit_snapshot_id_
 
std::shared_ptr< DataFiledata_file_
 
std::vector< std::shared_ptr< DataFile > > delete_files_
 
std::shared_ptr< Expressionresidual_filter_
 

Additional Inherited Members

- Public Types inherited from iceberg::ScanTask
enum class  Kind : uint8_t { kFileScanTask , kChangelogScanTask }
 

Detailed Description

A scan task for reading changelog entries between snapshots.

Constructor & Destructor Documentation

◆ ChangelogScanTask()

iceberg::ChangelogScanTask::ChangelogScanTask ( int32_t  change_ordinal,
int64_t  commit_snapshot_id,
std::shared_ptr< DataFile data_file,
std::vector< std::shared_ptr< DataFile > >  delete_files = {},
std::shared_ptr< Expression residual_filter = nullptr 
)
inline

Construct an AddedRowsScanTask.

Parameters
change_ordinalPosition in the changelog order (0-based).
commit_snapshot_idThe snapshot ID that committed this change.
data_fileThe data file containing the added rows.
delete_filesDelete files that apply to this data file.
residual_filterOptional residual filter to apply after reading.

Member Function Documentation

◆ estimated_row_count()

int64_t iceberg::ChangelogScanTask::estimated_row_count ( ) const
overridevirtual

The number of rows that should be read by this scan task.

Implements iceberg::ScanTask.

◆ files_count()

int32_t iceberg::ChangelogScanTask::files_count ( ) const
overridevirtual

The number of files that should be read by this scan task.

Implements iceberg::ScanTask.

◆ kind()

Kind iceberg::ChangelogScanTask::kind ( ) const
inlineoverridevirtual

The kind of scan task.

Implements iceberg::ScanTask.

◆ size_bytes()

int64_t iceberg::ChangelogScanTask::size_bytes ( ) const
overridevirtual

The number of bytes that should be read by this scan task.

Implements iceberg::ScanTask.


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