datafusion_physical_optimizer::limit_pushdown

Function pushdown_limit_helper

Source
pub fn pushdown_limit_helper(
    pushdown_plan: Arc<dyn ExecutionPlan>,
    global_state: GlobalRequirements,
) -> Result<(Transformed<Arc<dyn ExecutionPlan>>, GlobalRequirements)>
Expand description

This function is the main helper function of the LimitPushDown rule. The helper takes an ExecutionPlan and a global (algorithm) state which is an instance of GlobalRequirements and modifies these parameters while checking if the limits can be pushed down or not.

If a limit is encountered, a TreeNodeRecursion::Stop is returned. Otherwise, return a TreeNodeRecursion::Continue.