Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
71 commits
Select commit Hold shift + click to select a range
42fe863
Refactor struct casting and add unit tests
kosiew Dec 30, 2025
6b7ce25
docs: Document struct field-by-name casting behavior in ColumnarValue…
kosiew Dec 30, 2025
edffe39
fix: Use Arc::clone instead of .clone() for ref-counted pointer
kosiew Dec 30, 2025
77da244
fix: Support struct casting with field reordering and count changes
kosiew Dec 30, 2025
9dc6f77
fix: Remove unused import of Fields in columnar_value.rs
kosiew Dec 30, 2025
0544307
Fix final struct test case - use float format for coerced int field
kosiew Dec 30, 2025
4075920
fix: Add name-based struct coercion for CASE expressions and struct t…
kosiew Dec 30, 2025
9f04a4e
fix: Enable struct casting with field count changes by skipping const…
kosiew Dec 30, 2025
67d2659
fix: Enable struct coercion TODO tests in case.slt
kosiew Dec 30, 2025
129c9f7
refactor: Consolidate struct casting logic into nested_struct module
kosiew Dec 30, 2025
e337ef7
Add #17285 reproducer case
kosiew Dec 31, 2025
b0ed1ab
Add name-overlap detection and struct casting validation
kosiew Jan 13, 2026
cad6eac
Add null fast paths for struct casting and checks
kosiew Jan 13, 2026
9b61e2f
refactor: Improve struct casting logic and enhance readability
kosiew Jan 13, 2026
b22a742
Fix plan errors from optimizer rule failures
kosiew Jan 13, 2026
8682073
fix clippy
kosiew Jan 13, 2026
cc926b3
cargo fmt
kosiew Jan 13, 2026
0fe71b3
docs(common): avoid intra-doc link to private function in nested_struct
kosiew Jan 13, 2026
d0f1cc0
docs(common): avoid broken intra-doc link to ParquetWriterOptions beh…
kosiew Jan 13, 2026
c39e9eb
remove reproducer case
kosiew Jan 14, 2026
5ef5a12
Refactor cast_struct_column to eliminate duplication
kosiew Jan 14, 2026
49ee3a6
docs: correct grammar in ColumnarValue casting documentation
kosiew Jan 14, 2026
de57ca9
docs: remove outdated example from cast_to documentation
kosiew Jan 14, 2026
32065fa
refactor: simplify scalar casting in ColumnarValue
kosiew Jan 14, 2026
c76f1a6
refactor: remove redundant use of Field in tests
kosiew Jan 14, 2026
f0d43c4
refactor(expr-common): split struct coercion into name- and positiona…
kosiew Jan 14, 2026
3bc5444
refactor(binary): remove redundant imports in struct coercion functions
kosiew Jan 14, 2026
96b7f5f
refactor(expr-simplifier): remove comments about struct cast const-fo…
kosiew Jan 14, 2026
e4ae1bd
refactor(struct.slt): update comment for out of order struct literal …
kosiew Jan 14, 2026
7eb379a
test(sqllogictest): remove redundant struct reordering tests covered …
kosiew Jan 14, 2026
2f15474
refactor(struct.slt): remove redundant section header for struct cast…
kosiew Jan 14, 2026
0897435
refactor(struct.slt): remove redundant tests covered by existing suites
kosiew Jan 14, 2026
f801f19
Merge branch 'main' into struct-casting-17285
kosiew Jan 14, 2026
aa04ded
struct casting: validate missing non-nullable target fields; add tests
kosiew Jan 16, 2026
6558d69
fix(tests): streamline source struct initialization in casting tests
kosiew Jan 16, 2026
bdf5f20
fix clippy warning
kosiew Jan 16, 2026
682d28a
Validate nullability of fields and improve error handling
kosiew Jan 16, 2026
63e80f6
Fix struct casting validation: check nullability for NULL source type…
kosiew Jan 16, 2026
0d5126c
Make cast_struct_array_by_name an internal function (pub(crate))
kosiew Jan 16, 2026
81e56fb
Document necessity of null check in cast_struct_column for direct cal…
kosiew Jan 16, 2026
f304499
Document field name uniqueness assumptions in fields_have_same_names
kosiew Jan 16, 2026
5f08346
Add debug assertions to validate field name uniqueness in fields_have…
kosiew Jan 16, 2026
c74bddd
Add comprehensive tests for struct cast const-folding behavior
kosiew Jan 16, 2026
2734da2
Revert error handling in Optimizer
kosiew Jan 16, 2026
b9d79fc
Refactor imports in expr_simplifier.rs
kosiew Jan 16, 2026
77a7f94
fix: improve error message for struct casting with mismatched field c…
kosiew Jan 16, 2026
914356f
fix: clarify comment on null handling for struct column casting
kosiew Jan 16, 2026
af8e034
fix: remove unnecessary null handling checks in struct column casting
kosiew Jan 16, 2026
20d1c38
fix: prevent const-folding of empty struct cast literals
kosiew Jan 16, 2026
e1eff12
fix clippy
kosiew Jan 16, 2026
ec26c5e
fix: simplify imports and improve test readability
kosiew Jan 16, 2026
f557de2
tests(expr_simplifier): extract helper to create empty StructArray
kosiew Jan 16, 2026
11e8745
tests: extract make_struct_cast_expr helper for struct-cast tests
kosiew Jan 16, 2026
da60ed9
test: ensure struct cast with different field counts remains unchanged
kosiew Jan 16, 2026
7652dbb
test: improve struct cast test assertions
kosiew Jan 16, 2026
ea748d3
test: update assertions for struct cast simplification to use assert_ne
kosiew Jan 16, 2026
f5642db
test: add case for struct cast with empty array not being foldable
kosiew Jan 16, 2026
9f1d56e
refactor: remove cast_struct_array_by_name wrapper, consolidate on ca…
kosiew Jan 16, 2026
5a4ecb1
cargo fmt
kosiew Jan 17, 2026
2d5457b
refactor: rename fields_have_name_overlap to has_one_of_more_common_f…
kosiew Jan 20, 2026
9f496dd
feat: add validate_struct_compatibility tests
kosiew Jan 20, 2026
352066c
feat: add implicit coercion and field reordering tests for struct han…
kosiew Jan 20, 2026
e5d5d7a
feat: add array literal tests for struct field reordering and implici…
kosiew Jan 20, 2026
8c0fe98
feat: add dynamic array construction tests for struct columns
kosiew Jan 20, 2026
5e526b4
feat: add comprehensive implicit struct coercion tests
kosiew Jan 20, 2026
20d0248
feat: add JOIN and WHERE clause coercion tests for structs
kosiew Jan 20, 2026
fba0610
feat: enhance struct coercion documentation and add user guide
kosiew Jan 20, 2026
1d6a52c
Prettier fix
kosiew Jan 20, 2026
d3af52c
fix: improve error message for struct field casting compatibility
kosiew Jan 20, 2026
8bdaa84
refactor: remove redundant NULL filling test for struct field casting
kosiew Jan 20, 2026
3d3c99f
test: update struct field matching test to confirm unified type and v…
kosiew Jan 20, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion datafusion/common/src/config.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2248,7 +2248,7 @@ impl TableOptions {
/// Options that control how Parquet files are read, including global options
/// that apply to all columns and optional column-specific overrides
///
/// Closely tied to [`ParquetWriterOptions`](crate::file_options::parquet_writer::ParquetWriterOptions).
/// Closely tied to `ParquetWriterOptions` (see `crate::file_options::parquet_writer::ParquetWriterOptions` when the "parquet" feature is enabled).
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not related to this PR.

Fix to enable CI to pass.

/// Properties not included in [`TableParquetOptions`] may not be configurable at the external API
/// (e.g. sorting_columns).
#[derive(Clone, Default, Debug, PartialEq)]
Expand Down
Loading