@@ -523,6 +523,98 @@ explain format 123 select * from values (1);
523523query error DataFusion error: Error during planning: EXPLAIN VERBOSE with FORMAT is not supported
524524explain verbose format tree select * from values (1);
525525
526+ # verbose uses indent mode even when a different mode (e.g tree) is set
527+
528+ statement ok
529+ set datafusion.explain.format = "tree";
530+
531+ query TT
532+ EXPLAIN VERBOSE SELECT a, b, c FROM simple_explain_test
533+ ----
534+ initial_logical_plan
535+ 01)Projection: simple_explain_test.a, simple_explain_test.b, simple_explain_test.c
536+ 02)--TableScan: simple_explain_test
537+ logical_plan after resolve_grouping_function SAME TEXT AS ABOVE
538+ logical_plan after type_coercion SAME TEXT AS ABOVE
539+ analyzed_logical_plan SAME TEXT AS ABOVE
540+ logical_plan after eliminate_nested_union SAME TEXT AS ABOVE
541+ logical_plan after simplify_expressions SAME TEXT AS ABOVE
542+ logical_plan after replace_distinct_aggregate SAME TEXT AS ABOVE
543+ logical_plan after eliminate_join SAME TEXT AS ABOVE
544+ logical_plan after decorrelate_predicate_subquery SAME TEXT AS ABOVE
545+ logical_plan after scalar_subquery_to_join SAME TEXT AS ABOVE
546+ logical_plan after decorrelate_lateral_join SAME TEXT AS ABOVE
547+ logical_plan after extract_equijoin_predicate SAME TEXT AS ABOVE
548+ logical_plan after eliminate_duplicated_expr SAME TEXT AS ABOVE
549+ logical_plan after eliminate_filter SAME TEXT AS ABOVE
550+ logical_plan after eliminate_cross_join SAME TEXT AS ABOVE
551+ logical_plan after eliminate_limit SAME TEXT AS ABOVE
552+ logical_plan after propagate_empty_relation SAME TEXT AS ABOVE
553+ logical_plan after eliminate_one_union SAME TEXT AS ABOVE
554+ logical_plan after filter_null_join_keys SAME TEXT AS ABOVE
555+ logical_plan after eliminate_outer_join SAME TEXT AS ABOVE
556+ logical_plan after push_down_limit SAME TEXT AS ABOVE
557+ logical_plan after push_down_filter SAME TEXT AS ABOVE
558+ logical_plan after single_distinct_aggregation_to_group_by SAME TEXT AS ABOVE
559+ logical_plan after eliminate_group_by_constant SAME TEXT AS ABOVE
560+ logical_plan after common_sub_expression_eliminate SAME TEXT AS ABOVE
561+ logical_plan after optimize_projections TableScan: simple_explain_test projection=[a, b, c]
562+ logical_plan after eliminate_nested_union SAME TEXT AS ABOVE
563+ logical_plan after simplify_expressions SAME TEXT AS ABOVE
564+ logical_plan after replace_distinct_aggregate SAME TEXT AS ABOVE
565+ logical_plan after eliminate_join SAME TEXT AS ABOVE
566+ logical_plan after decorrelate_predicate_subquery SAME TEXT AS ABOVE
567+ logical_plan after scalar_subquery_to_join SAME TEXT AS ABOVE
568+ logical_plan after decorrelate_lateral_join SAME TEXT AS ABOVE
569+ logical_plan after extract_equijoin_predicate SAME TEXT AS ABOVE
570+ logical_plan after eliminate_duplicated_expr SAME TEXT AS ABOVE
571+ logical_plan after eliminate_filter SAME TEXT AS ABOVE
572+ logical_plan after eliminate_cross_join SAME TEXT AS ABOVE
573+ logical_plan after eliminate_limit SAME TEXT AS ABOVE
574+ logical_plan after propagate_empty_relation SAME TEXT AS ABOVE
575+ logical_plan after eliminate_one_union SAME TEXT AS ABOVE
576+ logical_plan after filter_null_join_keys SAME TEXT AS ABOVE
577+ logical_plan after eliminate_outer_join SAME TEXT AS ABOVE
578+ logical_plan after push_down_limit SAME TEXT AS ABOVE
579+ logical_plan after push_down_filter SAME TEXT AS ABOVE
580+ logical_plan after single_distinct_aggregation_to_group_by SAME TEXT AS ABOVE
581+ logical_plan after eliminate_group_by_constant SAME TEXT AS ABOVE
582+ logical_plan after common_sub_expression_eliminate SAME TEXT AS ABOVE
583+ logical_plan after optimize_projections SAME TEXT AS ABOVE
584+ logical_plan TableScan: simple_explain_test projection=[a, b, c]
585+ initial_physical_plan DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true
586+ initial_physical_plan_with_stats DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true, statistics=[Rows=Absent, Bytes=Absent, [(Col[0]:),(Col[1]:),(Col[2]:)]]
587+ initial_physical_plan_with_schema DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true, schema=[a:Int32;N, b:Int32;N, c:Int32;N]
588+ physical_plan after OutputRequirements
589+ 01)OutputRequirementExec: order_by=[], dist_by=Unspecified
590+ 02)--DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true
591+ physical_plan after aggregate_statistics SAME TEXT AS ABOVE
592+ physical_plan after join_selection SAME TEXT AS ABOVE
593+ physical_plan after LimitedDistinctAggregation SAME TEXT AS ABOVE
594+ physical_plan after FilterPushdown SAME TEXT AS ABOVE
595+ physical_plan after EnforceDistribution SAME TEXT AS ABOVE
596+ physical_plan after CombinePartialFinalAggregate SAME TEXT AS ABOVE
597+ physical_plan after EnforceSorting SAME TEXT AS ABOVE
598+ physical_plan after OptimizeAggregateOrder SAME TEXT AS ABOVE
599+ physical_plan after ProjectionPushdown SAME TEXT AS ABOVE
600+ physical_plan after coalesce_batches SAME TEXT AS ABOVE
601+ physical_plan after coalesce_async_exec_input SAME TEXT AS ABOVE
602+ physical_plan after OutputRequirements DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true
603+ physical_plan after LimitAggregation SAME TEXT AS ABOVE
604+ physical_plan after LimitPushPastWindows SAME TEXT AS ABOVE
605+ physical_plan after LimitPushdown SAME TEXT AS ABOVE
606+ physical_plan after ProjectionPushdown SAME TEXT AS ABOVE
607+ physical_plan after EnsureCooperative SAME TEXT AS ABOVE
608+ physical_plan after FilterPushdown(Post) SAME TEXT AS ABOVE
609+ physical_plan after SanityCheckPlan SAME TEXT AS ABOVE
610+ physical_plan DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true
611+ physical_plan_with_stats DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true, statistics=[Rows=Absent, Bytes=Absent, [(Col[0]:),(Col[1]:),(Col[2]:)]]
612+ physical_plan_with_schema DataSourceExec: file_groups={1 group: [[WORKSPACE_ROOT/datafusion/core/tests/data/example.csv]]}, projection=[a, b, c], file_type=csv, has_header=true, schema=[a:Int32;N, b:Int32;N, c:Int32;N]
613+
614+ # Set back to original default value
615+ statement ok
616+ set datafusion.explain.format = "indent";
617+
526618# no such thing as json mode
527619query error DataFusion error: Error during planning: Invalid explain format\. Expected 'indent', 'tree', 'pgjson' or 'graphviz'\. Got 'json'
528620explain format json select * from values (1);
0 commit comments