@@ -43,8 +43,7 @@ use common_datavalues::DataField;
43
43
use common_datavalues:: DataSchema ;
44
44
use common_datavalues:: DataSchemaRef ;
45
45
use common_datavalues:: DataSchemaRefExt ;
46
- use common_datavalues:: ToDataType ;
47
- use common_datavalues:: Vu8 ;
46
+ use common_datavalues:: StringType ;
48
47
use common_legacy_planners:: AlterTableClusterKeyPlan ;
49
48
use common_legacy_planners:: AlterUserPlan ;
50
49
use common_legacy_planners:: AlterUserUDFPlan ;
@@ -133,6 +132,12 @@ pub enum Plan {
133
132
kind : ExplainKind ,
134
133
plan : Box < Plan > ,
135
134
} ,
135
+ ExplainAst {
136
+ formatted_string : String ,
137
+ } ,
138
+ ExplainSyntax {
139
+ formatted_sql : String ,
140
+ } ,
136
141
137
142
// Copy
138
143
Copy ( Box < CopyPlanV2 > ) ,
@@ -293,6 +298,8 @@ impl Display for Plan {
293
298
Plan :: ShowShares ( _) => write ! ( f, "ShowShares" ) ,
294
299
Plan :: ShowObjectGrantPrivileges ( _) => write ! ( f, "ShowObjectGrantPrivileges" ) ,
295
300
Plan :: ShowGrantTenantsOfShare ( _) => write ! ( f, "ShowGrantTenantsOfShare" ) ,
301
+ Plan :: ExplainAst { .. } => write ! ( f, "ExplainAst" ) ,
302
+ Plan :: ExplainSyntax { .. } => write ! ( f, "ExplainSyntax" ) ,
296
303
}
297
304
}
298
305
}
@@ -307,8 +314,8 @@ impl Plan {
307
314
bind_context,
308
315
..
309
316
} => bind_context. output_schema ( ) ,
310
- Plan :: Explain { kind : _ , plan : _ } => {
311
- DataSchemaRefExt :: create ( vec ! [ DataField :: new( "explain" , Vu8 :: to_data_type ( ) ) ] )
317
+ Plan :: Explain { .. } | Plan :: ExplainAst { .. } | Plan :: ExplainSyntax { .. } => {
318
+ DataSchemaRefExt :: create ( vec ! [ DataField :: new( "explain" , StringType :: new_impl ( ) ) ] )
312
319
}
313
320
Plan :: Copy ( _) => Arc :: new ( DataSchema :: empty ( ) ) ,
314
321
Plan :: ShowCreateDatabase ( plan) => plan. schema ( ) ,
0 commit comments