[branch-4.1][fix](iceberg) Backport system table projection fix#65882
[branch-4.1][fix](iceberg) Backport system table projection fix#65882hello-stephen wants to merge 1 commit into
Conversation
|
Thank you for your contribution to Apache Doris. Please clearly describe your PR:
|
|
run buildall |
836a849 to
4336f7e
Compare
|
[conflict-resolved-4336f7ec] Rebased this backport onto current Attempt history:
Attempt-3 validation:
[attempt-3-slot-descriptor-parent] This is the third autonomous adaptation attempt for the same backport. If the fresh head still fails for the same branch-adaptation problem, I will stop further autonomous code changes, document the three attempts and remaining blocker, and hand the implementation back to the developer as agreed. |
|
run buildall |
|
/review |
|
Codex automated review failed and did not complete. Error: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Jul 30th, 2026 7:58 AM. Please inspect the workflow logs and rerun the review after the underlying issue is resolved. |
Iceberg system table scans serialize Iceberg SDK `FileScanTask` objects and the Java metadata scanner materializes rows from the task schema. Doris did not pass the actually required system table columns into the Iceberg SDK scan, so metadata tables such as `$files` and `$data_files` were planned with the full schema. For files metadata tables, the full schema can include virtual `readable_metrics` even when the SQL only requests columns such as `file_size_in_bytes`. This PR applies SDK top-level column projection only for Iceberg system table scans. Normal Iceberg data table scans continue to rely on Doris BE scan range params for column pruning. - Add system-table-only `TableScan.select(...)` projection in `IcebergScanNode` before planning the Iceberg SDK scan. - Skip synthesized/global row id and Iceberg row lineage columns when building the SDK projection list. - Add regression coverage for ORC and Parquet Iceberg tables with `map<boolean, boolean>` columns, verifying projected `$data_files` and `$files` queries. (cherry picked from commit d8e75cf)
4336f7e to
139c1ff
Compare
|
run buildall |
|
/review |
|
Codex automated review failed and did not complete. Error: You've hit your usage limit. Visit https://chatgpt.com/codex/settings/usage to purchase more credits or try again at Jul 30th, 2026 7:58 AM. Please inspect the workflow logs and rerun the review after the underlying issue is resolved. |
FE UT Coverage ReportIncrement line coverage |
FE Regression Coverage ReportIncrement line coverage |
|
[attempt-3-buildall-terminal] Attempt 3 head
The target occurrence |
Backport of #65262 for DORIS-26745.
Current branch-4.1 validation failure: internal build 203691, test_iceberg_system_table_projection, UnsupportedOperationException when deserializing list from a system-table projection.
The patch keeps the branch-4.1 FileQueryScanNode flow and excludes partition keys plus Iceberg/global row-id virtual columns from the projected schema.
Validation:
Cherry-picked/adapted from master commit d8e75cf.