Is your feature request related to a problem or challenge?
Every optimization for struct field querying (row level pushdown, leaf-level projection pruning, PushdownChecker, resolve_struct_field_leaves) is gated on the GetFieldFunc udf.
A custom UDF like variant_get gets none of these optimizations. There's no trait or capability API for a UDF to declare "I'm a struct field access."
This blocks Variant support entirely unless variant_get decomposes to get_field chains or the Parquet source learns a general mechanism for struct-access UDFs
Is your feature request related to a problem or challenge?
Every optimization for struct field querying (row level pushdown, leaf-level projection pruning,
PushdownChecker,resolve_struct_field_leaves) is gated on theGetFieldFuncudf.A custom UDF like
variant_getgets none of these optimizations. There's no trait or capability API for a UDF to declare "I'm a struct field access."This blocks Variant support entirely unless
variant_getdecomposes toget_fieldchains or the Parquet source learns a general mechanism for struct-access UDFs