iceberg-cpp
Loading...
Searching...
No Matches
Public Attributes | List of all members
iceberg::FileScanTaskReader::Options Struct Reference

Options shared by all tasks opened by this reader. More...

#include <file_scan_task_reader.h>

Public Attributes

std::shared_ptr< FileIO > io
 FileIO instance for reading data and delete files.
 
std::shared_ptr< Schema > table_schema
 The table schema. Used as the primary field lookup for delete file resolution.
 
std::vector< std::shared_ptr< Schema > > schemas
 Optional list of historical table schemas for field lookup.
 
std::shared_ptr< Schema > projected_schema
 
bool case_sensitive = true
 
std::shared_ptr< NameMapping > name_mapping
 Optional name mapping for files written without field IDs.
 
std::unordered_map< std::string, std::string > properties
 Format-specific or implementation-specific options for data readers.
 
bool apply_residuals {false}
 

Detailed Description

Options shared by all tasks opened by this reader.

Member Data Documentation

◆ apply_residuals

bool iceberg::FileScanTaskReader::Options::apply_residuals {false}

Whether to enforce each task's residual filter row by row, after deletes and before final projection. Residuals are bound against projected_schema; invalid references and unsupported expressions return errors.

◆ case_sensitive

bool iceberg::FileScanTaskReader::Options::case_sensitive = true

Case sensitivity for residual binding and reader field name resolution. Must match TableScan::is_case_sensitive(); tasks do not carry this setting.

◆ projected_schema

std::shared_ptr<Schema> iceberg::FileScanTaskReader::Options::projected_schema

The read and output projection; this need not be the full table schema. Must be a projection of table_schema. With apply_residuals enabled, callers must include every field referenced by each task's original residual, even if binding would fold its predicate to a constant. Open() fails on missing references rather than adding fields from table_schema. Filter-only columns remain in the output; delete-only columns are added internally as needed and removed before returning batches.


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