diff --git a/datafusion/execution/src/config.rs b/datafusion/execution/src/config.rs index 360bac71c510c..0a7a87c7d81a6 100644 --- a/datafusion/execution/src/config.rs +++ b/datafusion/execution/src/config.rs @@ -22,7 +22,10 @@ use std::{ sync::Arc, }; -use datafusion_common::{config::ConfigOptions, Result, ScalarValue}; +use datafusion_common::{ + config::{ConfigExtension, ConfigOptions}, + Result, ScalarValue, +}; /// Configuration options for [`SessionContext`]. /// @@ -198,6 +201,12 @@ impl SessionConfig { self } + /// Insert new [ConfigExtension] + pub fn with_option_extension(mut self, extension: T) -> Self { + self.options_mut().extensions.insert(extension); + self + } + /// Get [`target_partitions`] /// /// [`target_partitions`]: datafusion_common::config::ExecutionOptions::target_partitions