You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@arrow.apache.org by al...@apache.org on 2021/07/13 17:26:28 UTC
[arrow-datafusion] branch master updated: replace once iter chain
with array::IntoIter (#704)
This is an automated email from the ASF dual-hosted git repository.
alamb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/arrow-datafusion.git
The following commit(s) were added to refs/heads/master by this push:
new fd50dd8 replace once iter chain with array::IntoIter (#704)
fd50dd8 is described below
commit fd50dd808213e219559ccd142bcb88f2194ff4a5
Author: QP Hou <qp...@scribd.com>
AuthorDate: Tue Jul 13 10:26:20 2021 -0700
replace once iter chain with array::IntoIter (#704)
* replace once iter chain with array::IntoIter
* use new array IntoIter implementation from rust 1.53
---
datafusion/src/logical_plan/plan.rs | 8 +++-----
datafusion/src/optimizer/filter_push_down.rs | 13 +++++++++----
2 files changed, 12 insertions(+), 9 deletions(-)
diff --git a/datafusion/src/logical_plan/plan.rs b/datafusion/src/logical_plan/plan.rs
index 2504dfa..4749840 100644
--- a/datafusion/src/logical_plan/plan.rs
+++ b/datafusion/src/logical_plan/plan.rs
@@ -375,12 +375,10 @@ impl LogicalPlan {
{
self.using_columns.push(
on.iter()
- .map(|entry| {
- std::iter::once(entry.0.clone())
- .chain(std::iter::once(entry.1.clone()))
- })
+ .map(|entry| [&entry.0, &entry.1])
.flatten()
- .collect::<HashSet<_>>(),
+ .cloned()
+ .collect::<HashSet<Column>>(),
);
}
Ok(true)
diff --git a/datafusion/src/optimizer/filter_push_down.rs b/datafusion/src/optimizer/filter_push_down.rs
index 76d8c05..399923e 100644
--- a/datafusion/src/optimizer/filter_push_down.rs
+++ b/datafusion/src/optimizer/filter_push_down.rs
@@ -97,9 +97,11 @@ fn get_join_predicates<'a>(
.fields()
.iter()
.map(|f| {
- std::iter::once(f.qualified_column())
+ [
+ f.qualified_column(),
// we need to push down filter using unqualified column as well
- .chain(std::iter::once(f.unqualified_column()))
+ f.unqualified_column(),
+ ]
})
.flatten()
.collect::<HashSet<_>>();
@@ -107,8 +109,11 @@ fn get_join_predicates<'a>(
.fields()
.iter()
.map(|f| {
- std::iter::once(f.qualified_column())
- .chain(std::iter::once(f.unqualified_column()))
+ [
+ f.qualified_column(),
+ // we need to push down filter using unqualified column as well
+ f.unqualified_column(),
+ ]
})
.flatten()
.collect::<HashSet<_>>();