Skip to content

FilterExec Unary Physical Operator

FilterExec is a unary physical operator that represents Filter and TypedFilter unary logical operators at execution time.

Creating Instance

FilterExec takes the following to be created:

FilterExec is created when:

Performance Metrics

Key Name (in web UI) Description
numOutputRows number of output rows Number of output rows

FilterExec in web UI (Details for Query)

Executing Operator

SparkPlan
doExecute(): RDD[InternalRow]

doExecute is part of the SparkPlan abstraction.

doExecute creates a FilterEvaluatorFactory (with the condition, the output of the child operator, and the numOutputRows metric).

With spark.sql.execution.usePartitionEvaluator enabled, doExecute requests the child operator to execute (that gives a RDD[InternalRow]). In the end, doExecute uses RDD.mapPartitionsWithEvaluator operator (Spark Core) with the FilterEvaluatorFactory.

Otherwise, doExecute...FIXME