gstvg commented on issue #23068:
URL: https://github.com/apache/datafusion/issues/23068#issuecomment-4764867694
In the meantime, there are two ugly, temporarily fixes:
- Call `resolve_lambda_variables` directly in the expressions that need it :
```rust
df = df
.with_column("l", make_array(vec![lit("0"), lit("1"), lit("2")]))?
.aggregate(
vec![lit("true")],
vec![array_agg(named_struct(vec![lit("id"), col("id"),
lit("name"), col("name"), lit("l"), col("l")])).alias("grouped")],
)?;
let schema = df.schema().clone();
df = df.with_column("test", expr1.resolve_lambda_variables(&schema)?)?;
let schema = df.schema().clone();
df = df..with_column("test2", expr2.resolve_lambda_variables(&schema)?)?;
let plan = df.into_unoptimized_plan(); // no need to call
resolve_lambda_variables here
```
- Implement wrappers for the modified functions in #23071 (all higher-order
functions, map_extract and spark repeat) and intercept nulls in `coerce_types`,
other cases and all other methods can just invoke the existing wrapped function
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]