Skip to content

refactor(reader): build Arrow reader metadata once - #3242

Open
kamcheungting-db wants to merge 1 commit into
apache:mainfrom
kamcheungting-db:refactor-arrow-reader-metadata-2860
Open

kamcheungting-db wants to merge 1 commit into
apache:mainfrom
kamcheungting-db:refactor-arrow-reader-metadata-2860

Conversation

@kamcheungting-db

@kamcheungting-db kamcheungting-db commented Sep 17, 2026

Copy link
Copy Markdown

Which issue does this PR close?

What changes are included in this PR?

This PR extracts field-ID, INT96 coercion and row-number virtual columns assignment logic from FileScanTaskReader::process to an new method FileScanTaskReader::ArrowReaderMetadata. It helps reducing the cost of repeatedly object clone and simplify the logic.

Are these changes tested?

  • cargo fmt --all -- --check
  • cargo check -p iceberg --lib
  • cargo clippy -p iceberg --lib --offline -- -D warnings
  • cargo test -p iceberg --lib arrow::reader::pipeline::tests — 47 passed

No new tests were added because this is a behavior-preserving refactor and the
existing pipeline tests cover each affected path.

AI Disclosure

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor ArrowReaderMetadata building in the process function of FileScanTaskReader

1 participant