@@ -39,12 +39,11 @@ use crate::to_datafusion_error;
3939
4040/// Iceberg [`Table`] scan as a DataFusion [`ExecutionPlan`].
4141///
42- /// Has three construction modes: [`new`][Self::new] (lazy, single-partition),
43- /// [`new_with_tasks`][Self::new_with_tasks] (eager, over pre-planned
44- /// [`FileScanTask`] buckets), and
45- /// [`new_with_tasks_from_predicate`][Self::new_with_tasks_from_predicate]
46- /// (eager, from a [`Predicate`]) — the last lets a node be rebuilt from its
47- /// getters, e.g. by a distributed-plan codec.
42+ /// Has three construction modes: [`new`][Self::new] for a lazy
43+ /// single-partition scan, [`new_with_tasks`][Self::new_with_tasks] for an
44+ /// eager scan over pre-planned [`FileScanTask`] buckets, and
45+ /// [`new_with_tasks_from_predicate`][Self::new_with_tasks_from_predicate] for
46+ /// rebuilding an eager scan from a [`Predicate`].
4847///
4948/// Note: in eager mode the underlying `TableScan` is rebuilt on every
5049/// `execute(partition)` call. The per-build cost is bounded (no I/O) and
@@ -60,11 +59,9 @@ pub struct IcebergTableScan {
6059 plan_properties : Arc < PlanProperties > ,
6160 /// Projection column names, None means all columns.
6261 projection : Option < Vec < String > > ,
63- /// Full schema before projection. Kept verbatim, not re-derived: the
64- /// provider caches it while reloading the table, so it can diverge from the
65- /// table's current metadata.
62+ /// Full schema before projection.
6663 table_schema : ArrowSchemaRef ,
67- /// Projection indices as received by `scan`; `projection` keeps only names .
64+ /// Projection indices as received by `scan`.
6865 projection_indices : Option < Vec < usize > > ,
6966 /// Filters to apply to the table scan.
7067 predicates : Option < Predicate > ,
@@ -127,10 +124,7 @@ impl IcebergTableScan {
127124 )
128125 }
129126
130- /// Eager variant taking a [`Predicate`] instead of [`Expr`] filters, so a
131- /// node can be rebuilt from its getters. The predicate is unbound; the scan
132- /// builder binds it at `execute` time.
133- // Arity mirrors `new_with_tasks`; an args struct is deferred.
127+ /// Creates an eager multi-partition scan from a [`Predicate`].
134128 #[ allow( clippy:: too_many_arguments) ]
135129 pub fn new_with_tasks_from_predicate (
136130 table : Table ,
0 commit comments