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 2023/06/20 15:12:35 UTC

[arrow-datafusion] branch main updated: Minor: Improve UX for setting ExecutionProps::query_execution_start_time (#6719)

This is an automated email from the ASF dual-hosted git repository.

alamb pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/arrow-datafusion.git


The following commit(s) were added to refs/heads/main by this push:
     new 0ef9478e66 Minor: Improve UX for setting ExecutionProps::query_execution_start_time (#6719)
0ef9478e66 is described below

commit 0ef9478e6675308529d5420e94d70b0f3a32dc98
Author: Andrew Lamb <an...@nerdnetworks.org>
AuthorDate: Tue Jun 20 11:12:29 2023 -0400

    Minor: Improve UX for setting ExecutionProps::query_execution_start_time (#6719)
---
 .../optimizer/src/simplify_expressions/expr_simplifier.rs     |  8 ++------
 datafusion/physical-expr/src/execution_props.rs               | 11 ++++++++++-
 2 files changed, 12 insertions(+), 7 deletions(-)

diff --git a/datafusion/optimizer/src/simplify_expressions/expr_simplifier.rs b/datafusion/optimizer/src/simplify_expressions/expr_simplifier.rs
index 212b8b516d..6d05e329b7 100644
--- a/datafusion/optimizer/src/simplify_expressions/expr_simplifier.rs
+++ b/datafusion/optimizer/src/simplify_expressions/expr_simplifier.rs
@@ -1220,7 +1220,6 @@ mod tests {
         datatypes::{DataType, Field, Schema},
     };
     use chrono::{DateTime, TimeZone, Utc};
-    use datafusion_common::alias::AliasGenerator;
     use datafusion_common::{assert_contains, cast::as_int32_array, DFField, ToDFSchema};
     use datafusion_expr::*;
     use datafusion_physical_expr::{
@@ -1314,11 +1313,8 @@ mod tests {
         expected_expr: Expr,
         date_time: &DateTime<Utc>,
     ) {
-        let execution_props = ExecutionProps {
-            query_execution_start_time: *date_time,
-            alias_generator: Arc::new(AliasGenerator::new()),
-            var_providers: None,
-        };
+        let execution_props =
+            ExecutionProps::new().with_query_execution_start_time(*date_time);
 
         let mut const_evaluator = ConstEvaluator::try_new(&execution_props).unwrap();
         let evaluated_expr = input_expr
diff --git a/datafusion/physical-expr/src/execution_props.rs b/datafusion/physical-expr/src/execution_props.rs
index f20d7f1855..8fdbbb7c54 100644
--- a/datafusion/physical-expr/src/execution_props.rs
+++ b/datafusion/physical-expr/src/execution_props.rs
@@ -21,7 +21,7 @@ use datafusion_common::alias::AliasGenerator;
 use std::collections::HashMap;
 use std::sync::Arc;
 
-/// Holds per-query execution properties and data (such as statment
+/// Holds per-query execution properties and data (such as statement
 /// starting timestamps).
 ///
 /// An [`ExecutionProps`] is created each time a [`LogicalPlan`] is
@@ -59,6 +59,15 @@ impl ExecutionProps {
         }
     }
 
+    /// Set the query execution start time to use
+    pub fn with_query_execution_start_time(
+        mut self,
+        query_execution_start_time: DateTime<Utc>,
+    ) -> Self {
+        self.query_execution_start_time = query_execution_start_time;
+        self
+    }
+
     /// Marks the execution of query started timestamp.
     /// This also instantiates a new alias generator.
     pub fn start_execution(&mut self) -> &Self {