You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Is your feature request related to a problem or challenge? Please describe what you are trying to do.
DataFusion 44 is preparing for the next release. Let's start the upgrade process and document all changes we've needed to make to feed back to them as part of an upgrade guide.
Describe the solution you'd like
Keep a running branch with the upgrade differences and document in this issue what we've encountered as we go along. Ideally we will complete this evaluation before the datafusion release process ends so we can identify issues earlier.
The trait definition of ExecutionPlanProperties return type for output_ordering now is Option<&LexOrdering> instead of Option<&[PhysicalSortExpr]>. The recommendation is to use .into() to convert into the required output.
find_df_window_func has now been removed from the logical_expr crate. If users require this functionality they can perform equivalent searches by either creating a default session context, or calling all_default_aggregate_functions and all_default_window_functions, or by searching their existing session context using ctx.udaf, ctx.window_functions, ctx.aggregate_functions, and so on.
LogicalPlan::Prepare and LogicalPlan::Execute have been removed. We do not actively use these in datafusion-python and I didn't search further for figuring out migration strategy.
to_substrait_plan and from_substrait_plan no longer take a session context. Rather they expect a SubstraitPlanningState which is implemented by SessionState. One recommended migration is to call ctx.ctx.state() and use a borrow of the returned SessionState.
RuntimeConfig is now deprecated in favor of RuntimeEnvBuilder. The migration is fairly straightforward, except to create the RuntimeEnv you now call build().
String concat of a string view and string returns a string view.
date_part function returns int32 instead of float64.
Activity
timsaucer commentedon Dec 13, 2024
ExecutionPlanPropertiesreturn type foroutput_orderingnow isOption<&LexOrdering>instead ofOption<&[PhysicalSortExpr]>. The recommendation is to use.into()to convert into the required output.find_df_window_funchas now been removed from thelogical_exprcrate. If users require this functionality they can perform equivalent searches by either creating a default session context, or callingall_default_aggregate_functionsandall_default_window_functions, or by searching their existing session context usingctx.udaf,ctx.window_functions,ctx.aggregate_functions, and so on.LogicalPlan::PrepareandLogicalPlan::Executehave been removed. We do not actively use these indatafusion-pythonand I didn't search further for figuring out migration strategy.to_substrait_planandfrom_substrait_planno longer take a session context. Rather they expect aSubstraitPlanningStatewhich is implemented by SessionState. One recommended migration is to callctx.ctx.state()and use a borrow of the returned SessionState.RuntimeConfigis now deprecated in favor ofRuntimeEnvBuilder. The migration is fairly straightforward, except to create the RuntimeEnv you now callbuild().