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

A metadata scan that plans tasks or reads all of them as Arrow batches. More...

#include <metadata_scan.h>

Inheritance diagram for iceberg::MetadataScan:
iceberg::HistoryScan iceberg::RefsScan iceberg::SnapshotsScan

Public Member Functions

virtual Result< MetadataScanTaskStreamPtr > PlanTasksStream () const =0
 Return a fresh task stream; consuming it may report planning errors.
 
virtual Result< std::vector< std::shared_ptr< MetadataScanTask > > > PlanTasks () const
 Collect every task from PlanTasksStream(), preserving planning order.
 
virtual Result< ArrowArrayStream > ToArrowArrayStream () const
 Read every task in planning order as one Arrow stream.
 

Protected Member Functions

 MetadataScan (internal::MetadataScanContext context)
 
const internal::MetadataScanContext & context () const
 

Detailed Description

A metadata scan that plans tasks or reads all of them as Arrow batches.

Member Function Documentation

◆ PlanTasksStream()

virtual Result< MetadataScanTaskStreamPtr > iceberg::MetadataScan::PlanTasksStream ( ) const
pure virtual

Return a fresh task stream; consuming it may report planning errors.

Implemented in iceberg::HistoryScan, iceberg::RefsScan, and iceberg::SnapshotsScan.

◆ ToArrowArrayStream()

virtual Result< ArrowArrayStream > iceberg::MetadataScan::ToArrowArrayStream ( ) const
virtual

Read every task in planning order as one Arrow stream.

The stream owns its read state and can outlive this scan. Release the stream and each returned schema or array independently. To set batch size, open the planned tasks with MetadataScanTaskReader; each task retains its projection.


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