Skip to content

Commit 6ee5efe

Browse files
committed
fix clippy
1 parent 910454a commit 6ee5efe

File tree

2 files changed

+15
-13
lines changed

2 files changed

+15
-13
lines changed

datafusion/datasource/src/source.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -179,16 +179,19 @@ impl ExecutionPlan for DataSourceExec {
179179
fn statistics_by_partition(
180180
&self,
181181
) -> datafusion_common::Result<PartitionedStatistics> {
182-
let mut statistics = vec![
183-
Arc::new(Statistics::new_unknown(&self.schema()));
184-
self.properties().partitioning.partition_count()
185-
];
182+
let mut statistics = {
183+
let mut v =
184+
Vec::with_capacity(self.properties().partitioning.partition_count());
185+
(0..self.properties().partitioning.partition_count())
186+
.for_each(|_| v.push(Arc::new(Statistics::new_unknown(&self.schema()))));
187+
v
188+
};
186189
if let Some(file_config) =
187190
self.data_source.as_any().downcast_ref::<FileScanConfig>()
188191
{
189192
for (idx, file_group) in file_config.file_groups.iter().enumerate() {
190193
if let Some(stat) = file_group.statistics() {
191-
statistics[idx] = stat.clone();
194+
statistics[idx] = Arc::clone(stat);
192195
}
193196
}
194197
}

datafusion/physical-plan/src/execution_plan.rs

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -432,14 +432,13 @@ pub trait ExecutionPlan: Debug + DisplayAs + Send + Sync {
432432
/// If statistics are not available, returns an array of
433433
/// [`Statistics::new_unknown`] for each partition.
434434
fn statistics_by_partition(&self) -> Result<PartitionedStatistics> {
435-
Ok(PartitionedStatistics::new(vec![
436-
Arc::new(
437-
Statistics::new_unknown(&self.schema())
438-
);
439-
self.properties()
440-
.partitioning
441-
.partition_count()
442-
]))
435+
Ok(PartitionedStatistics::new({
436+
let mut v =
437+
Vec::with_capacity(self.properties().partitioning.partition_count());
438+
(0..self.properties().partitioning.partition_count())
439+
.for_each(|_| v.push(Arc::new(Statistics::new_unknown(&self.schema()))));
440+
v
441+
}))
443442
}
444443

445444
/// Returns `true` if a limit can be safely pushed down through this

0 commit comments

Comments
 (0)