Skip to content

Commit da70fab

Browse files
authored
Fill in missing Debug fields for SessionState (#12663)
* Require Debug for PhysicalOptimizerRule * Add reference to meet &JoinType type required * Revert "Add reference to meet &JoinType type required" as clippy lint informs this is unnecessary This reverts commit f69d73c. * Require `Debug` for `CatalogProvider`, `CatalogProviderList`, UrlTableFactory * Add derive Debug to meet api-change * Add derive Debug in datafusion-cli to support api-change of CatalogProviderList * Require Debug for ExprPlanner * Require Debug for QueryPlanner * Require Debug for TableFunctionImpl * Require Debug for SerializerRegistry * Require Debug for FunctionFactory * Derive `Debug` on `SessionStateBuilder` * Implement `Debug` for `SessionStateBuilder` to reorder output fields, keep consistent Debug field order with `SessionState` * Settle TODO for displaying `Debug` of `InformationSchemaConfig` after `CatalogProviderList` requires `Debug` * Implement `Debug` for `SessionState` to be in sync with `SessionStateBuilder` now that the fields all require `Debug` * Implement `Debug` for `SessionState` to be in sync with `SessionStateBuilder` now that the fields have `Debug` available * Correct name in `Debug` impl for `SessionState`
1 parent a0a635a commit da70fab

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

datafusion/core/src/execution/session_state.rs

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -174,27 +174,30 @@ pub struct SessionState {
174174
}
175175

176176
impl Debug for SessionState {
177+
/// Prefer having short fields at the top and long vector fields near the end
178+
/// Group fields by
177179
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
178180
f.debug_struct("SessionState")
179181
.field("session_id", &self.session_id)
180182
.field("config", &self.config)
181183
.field("runtime_env", &self.runtime_env)
182-
.field("catalog_list", &"...")
183-
.field("serializer_registry", &"...")
184+
.field("catalog_list", &self.catalog_list)
185+
.field("serializer_registry", &self.serializer_registry)
186+
.field("file_formats", &self.file_formats)
184187
.field("execution_props", &self.execution_props)
185188
.field("table_options", &self.table_options)
186-
.field("table_factories", &"...")
187-
.field("function_factory", &"...")
188-
.field("expr_planners", &"...")
189-
.field("query_planner", &"...")
190-
.field("analyzer", &"...")
191-
.field("optimizer", &"...")
192-
.field("physical_optimizers", &"...")
193-
.field("table_functions", &"...")
189+
.field("table_factories", &self.table_factories)
190+
.field("function_factory", &self.function_factory)
191+
.field("expr_planners", &self.expr_planners)
192+
.field("query_planners", &self.query_planner)
193+
.field("analyzer", &self.analyzer)
194+
.field("optimizer", &self.optimizer)
195+
.field("physical_optimizers", &self.physical_optimizers)
196+
.field("table_functions", &self.table_functions)
194197
.field("scalar_functions", &self.scalar_functions)
195198
.field("aggregate_functions", &self.aggregate_functions)
196199
.field("window_functions", &self.window_functions)
197-
.finish_non_exhaustive()
200+
.finish()
198201
}
199202
}
200203

0 commit comments

Comments
 (0)