Commit 21646fb
committed
refactor: extract sort pushdown logic from FileScanConfig into separate module
Move statistics-based file sorting, non-overlapping validation, and NULL
handling logic into `datasource/src/sort_pushdown.rs` to reduce the size
of `file_scan_config.rs` (3591 → 3066 lines).
Moved to sort_pushdown module:
- rebuild_with_source, try_sort_file_groups_by_statistics
- sort_files_within_groups_by_statistics, any_file_has_nulls_in_sort_columns
- validate_orderings, is_ordering_valid_for_file_groups
- get_projected_output_ordering, ordered_column_indices_from_projection
Pure refactor — no behavior changes.
Closes #214331 parent 603bfb4 commit 21646fb
3 files changed
Lines changed: 590 additions & 538 deletions
0 commit comments