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
{{ message }}
Repository navigation
CoalesceBatches physical optimizer rule says it should be last but it isn't #18148
// The CoalesceBatches rule will not influence the distribution and ordering of the
// whole plan tree. Therefore, to avoid influencing other rules, it should run last.
Arc::new(CoalesceBatches::new()),
Arc::new(CoalesceAsyncExecInput::new()),
// Remove the ancillary output requirement operator since we are done with the planning
// phase.
Arc::new(OutputRequirements::new_remove_mode()),
Can see here it states CoalesceBatches rule should be last but seems this isn't the case anymore; either comment is outdated and it doesn't need to be last anymore, or we should in-fact move it down to respect the comment.
Activity
Jefffrey commentedon Oct 18, 2025
Side note: it would be nice to add the comment for
CoalesceAsyncExecInputtoo, to be consistent with how it's done for other rules. Something like:// Coalesce in order to reduce number of async function invocations for efficiency.alamb commentedon Nov 17, 2025
FWIW I am working to organize some work to remove this execution plan entirely:
CoalesceBatchesExecoperator #18779alamb commentedon Jan 6, 2026
The rule was removed in
CoalesceBatchesoptimizer rule #19591So I think this issue is now obselete