Skip to content

Commit 6c7d602

Browse files
authored
chore: missing column index for output columns in explain verbose (#17657)
* explain logical
1 parent cd95677 commit 6c7d602

File tree

20 files changed

+608
-514
lines changed

20 files changed

+608
-514
lines changed

โ€Žsrc/query/service/src/interpreters/access/management_mode_access.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,7 @@ impl AccessChecker for ManagementModeAccess {
134134
if !ok {
135135
return Err(ErrorCode::ManagementModePermissionDenied(format!(
136136
"Management Mode Error: Access denied for operation:{:?} in management-mode",
137-
plan.format_indent(false)?
137+
plan.format_indent(Default::default())?
138138
)));
139139
}
140140
};

โ€Žsrc/query/service/src/interpreters/interpreter_explain.rs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ use databend_common_sql::executor::MutationBuildInfo;
3737
use databend_common_sql::optimizer::ColumnSet;
3838
use databend_common_sql::plans::Mutation;
3939
use databend_common_sql::BindContext;
40+
use databend_common_sql::FormatOptions;
4041
use databend_common_sql::MetadataRef;
4142
use databend_common_storages_result_cache::gen_result_cache_key;
4243
use databend_common_storages_result_cache::ResultCacheReader;
@@ -91,6 +92,9 @@ impl Interpreter for ExplainInterpreter {
9192

9293
#[async_backtrace::framed]
9394
async fn execute2(&self) -> Result<PipelineBuildResult> {
95+
let options = FormatOptions {
96+
verbose: self.config.verbose,
97+
};
9498
let blocks = match &self.kind {
9599
ExplainKind::Plan if self.config.logical => self.explain_plan(&self.plan)?,
96100
ExplainKind::Plan => match &self.plan {
@@ -104,8 +108,8 @@ impl Interpreter for ExplainInterpreter {
104108
self.explain_query(s_expr, metadata, bind_context, formatted_ast)
105109
.await?
106110
}
107-
Plan::Insert(insert_plan) => insert_plan.explain(self.config.verbose).await?,
108-
Plan::Replace(replace_plan) => replace_plan.explain(self.config.verbose).await?,
111+
Plan::Insert(insert_plan) => insert_plan.explain(options).await?,
112+
Plan::Replace(replace_plan) => replace_plan.explain(options).await?,
109113
Plan::CreateTable(plan) => match &plan.as_select {
110114
Some(box Plan::Query {
111115
s_expr,
@@ -300,7 +304,10 @@ impl ExplainInterpreter {
300304
}
301305

302306
pub fn explain_plan(&self, plan: &Plan) -> Result<Vec<DataBlock>> {
303-
let result = plan.format_indent(self.config.verbose)?;
307+
let options = FormatOptions {
308+
verbose: self.config.verbose,
309+
};
310+
let result = plan.format_indent(options)?;
304311
let line_split_result: Vec<&str> = result.lines().collect();
305312
let formatted_plan = StringType::from_data(line_split_result);
306313
Ok(vec![DataBlock::new_from_columns(vec![formatted_plan])])

โ€Žsrc/query/service/tests/it/sql/planner/optimizer/data/yaml/q1.yaml

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ raw_plan: |
118118
โ”œโ”€โ”€ limit: [100]
119119
โ”œโ”€โ”€ offset: [0]
120120
โ””โ”€โ”€ Sort
121-
โ”œโ”€โ”€ sort keys: [default.customer.c_customer_id (#79) ASC]
121+
โ”œโ”€โ”€ sort keys: [default.customer.c_customer_id (#79) ASC NULLS LAST]
122122
โ”œโ”€โ”€ limit: [NONE]
123123
โ””โ”€โ”€ EvalScalar
124124
โ”œโ”€โ”€ scalars: [customer.c_customer_id (#79) AS (#79)]
@@ -135,8 +135,8 @@ raw_plan: |
135135
โ”‚ โ”œโ”€โ”€ EvalScalar
136136
โ”‚ โ”‚ โ”œโ”€โ”€ scalars: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7), Sum(sr_return_amt) (#48) AS (#48)]
137137
โ”‚ โ”‚ โ””โ”€โ”€ Aggregate(Initial)
138-
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3), store_returns.sr_store_sk (#7)]
139-
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) (#48)]
138+
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7)]
139+
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) AS (#48)]
140140
โ”‚ โ”‚ โ””โ”€โ”€ EvalScalar
141141
โ”‚ โ”‚ โ”œโ”€โ”€ scalars: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7), store_returns.sr_return_amt (#11) AS (#11)]
142142
โ”‚ โ”‚ โ””โ”€โ”€ Filter
@@ -146,22 +146,22 @@ raw_plan: |
146146
โ”‚ โ”‚ โ”œโ”€โ”€ probe keys: []
147147
โ”‚ โ”‚ โ”œโ”€โ”€ other filters: []
148148
โ”‚ โ”‚ โ”œโ”€โ”€ Scan
149-
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ table: default.store_returns
149+
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ table: default.store_returns (#0)
150150
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ filters: []
151151
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ order by: []
152152
โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ limit: NONE
153153
โ”‚ โ”‚ โ””โ”€โ”€ Scan
154-
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim
154+
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim (#1)
155155
โ”‚ โ”‚ โ”œโ”€โ”€ filters: []
156156
โ”‚ โ”‚ โ”œโ”€โ”€ order by: []
157157
โ”‚ โ”‚ โ””โ”€โ”€ limit: NONE
158158
โ”‚ โ””โ”€โ”€ Scan
159-
โ”‚ โ”œโ”€โ”€ table: default.store
159+
โ”‚ โ”œโ”€โ”€ table: default.store (#2)
160160
โ”‚ โ”œโ”€โ”€ filters: []
161161
โ”‚ โ”œโ”€โ”€ order by: []
162162
โ”‚ โ””โ”€โ”€ limit: NONE
163163
โ””โ”€โ”€ Scan
164-
โ”œโ”€โ”€ table: default.customer
164+
โ”œโ”€โ”€ table: default.customer (#3)
165165
โ”œโ”€โ”€ filters: []
166166
โ”œโ”€โ”€ order by: []
167167
โ””โ”€โ”€ limit: NONE
@@ -171,7 +171,7 @@ optimized_plan: |
171171
โ”œโ”€โ”€ limit: [100]
172172
โ”œโ”€โ”€ offset: [0]
173173
โ””โ”€โ”€ Sort
174-
โ”œโ”€โ”€ sort keys: [default.customer.c_customer_id (#79) ASC]
174+
โ”œโ”€โ”€ sort keys: [default.customer.c_customer_id (#79) ASC NULLS LAST]
175175
โ”œโ”€โ”€ limit: [100]
176176
โ””โ”€โ”€ EvalScalar
177177
โ”œโ”€โ”€ scalars: [customer.c_customer_id (#79) AS (#79), ctr1.ctr_total_return (#48) AS (#154), scalar_subquery_147 (#147) AS (#155), store.s_store_sk (#49) AS (#156), ctr1.ctr_store_sk (#7) AS (#157), store.s_state (#73) AS (#158), ctr1.ctr_customer_sk (#3) AS (#159), customer.c_customer_sk (#78) AS (#160)]
@@ -184,29 +184,29 @@ optimized_plan: |
184184
โ”‚ โ”œโ”€โ”€ probe keys: [ctr1.ctr_customer_sk (#3)]
185185
โ”‚ โ”œโ”€โ”€ other filters: []
186186
โ”‚ โ”œโ”€โ”€ Aggregate(Final)
187-
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3), store_returns.sr_store_sk (#7)]
188-
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) (#48)]
187+
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7)]
188+
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) AS (#48)]
189189
โ”‚ โ”‚ โ””โ”€โ”€ Aggregate(Partial)
190-
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3), store_returns.sr_store_sk (#7)]
191-
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) (#48)]
190+
โ”‚ โ”‚ โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7)]
191+
โ”‚ โ”‚ โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) AS (#48)]
192192
โ”‚ โ”‚ โ””โ”€โ”€ EvalScalar
193193
โ”‚ โ”‚ โ”œโ”€โ”€ scalars: [store_returns.sr_customer_sk (#3) AS (#3), store_returns.sr_store_sk (#7) AS (#7), store_returns.sr_return_amt (#11) AS (#11), store_returns.sr_returned_date_sk (#0) AS (#148), date_dim.d_date_sk (#20) AS (#149), date_dim.d_year (#26) AS (#150)]
194194
โ”‚ โ”‚ โ””โ”€โ”€ Join(Inner)
195195
โ”‚ โ”‚ โ”œโ”€โ”€ build keys: [date_dim.d_date_sk (#20)]
196196
โ”‚ โ”‚ โ”œโ”€โ”€ probe keys: [store_returns.sr_returned_date_sk (#0)]
197197
โ”‚ โ”‚ โ”œโ”€โ”€ other filters: []
198198
โ”‚ โ”‚ โ”œโ”€โ”€ Scan
199-
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ table: default.store_returns
199+
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ table: default.store_returns (#0)
200200
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ filters: []
201201
โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€ order by: []
202202
โ”‚ โ”‚ โ”‚ โ””โ”€โ”€ limit: NONE
203203
โ”‚ โ”‚ โ””โ”€โ”€ Scan
204-
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim
204+
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim (#1)
205205
โ”‚ โ”‚ โ”œโ”€โ”€ filters: [eq(date_dim.d_year (#26), 2001)]
206206
โ”‚ โ”‚ โ”œโ”€โ”€ order by: []
207207
โ”‚ โ”‚ โ””โ”€โ”€ limit: NONE
208208
โ”‚ โ””โ”€โ”€ Scan
209-
โ”‚ โ”œโ”€โ”€ table: default.customer
209+
โ”‚ โ”œโ”€โ”€ table: default.customer (#3)
210210
โ”‚ โ”œโ”€โ”€ filters: []
211211
โ”‚ โ”œโ”€โ”€ order by: []
212212
โ”‚ โ””โ”€โ”€ limit: NONE
@@ -215,37 +215,37 @@ optimized_plan: |
215215
โ”œโ”€โ”€ probe keys: [store.s_store_sk (#49)]
216216
โ”œโ”€โ”€ other filters: []
217217
โ”œโ”€โ”€ Scan
218-
โ”‚ โ”œโ”€โ”€ table: default.store
218+
โ”‚ โ”œโ”€โ”€ table: default.store (#2)
219219
โ”‚ โ”œโ”€โ”€ filters: [eq(store.s_state (#73), 'TN')]
220220
โ”‚ โ”œโ”€โ”€ order by: []
221221
โ”‚ โ””โ”€โ”€ limit: NONE
222222
โ””โ”€โ”€ EvalScalar
223223
โ”œโ”€โ”€ scalars: [outer.sr_store_sk (#103) AS (#103), multiply(divide(sum(ctr_total_return) (#145), if(eq(count(ctr_total_return) (#146), 0), 1, count(ctr_total_return) (#146))), 1.2) AS (#147)]
224224
โ””โ”€โ”€ Aggregate(Final)
225-
โ”œโ”€โ”€ group items: [outer.sr_store_sk (#103)]
226-
โ”œโ”€โ”€ aggregate functions: [sum(ctr_total_return) (#145), count(ctr_total_return) (#146)]
225+
โ”œโ”€โ”€ group items: [outer.sr_store_sk (#103) AS (#103)]
226+
โ”œโ”€โ”€ aggregate functions: [sum(ctr_total_return) AS (#145), count(ctr_total_return) AS (#146)]
227227
โ””โ”€โ”€ Aggregate(Partial)
228-
โ”œโ”€โ”€ group items: [outer.sr_store_sk (#103)]
229-
โ”œโ”€โ”€ aggregate functions: [sum(ctr_total_return) (#145), count(ctr_total_return) (#146)]
228+
โ”œโ”€โ”€ group items: [outer.sr_store_sk (#103) AS (#103)]
229+
โ”œโ”€โ”€ aggregate functions: [sum(ctr_total_return) AS (#145), count(ctr_total_return) AS (#146)]
230230
โ””โ”€โ”€ Aggregate(Final)
231-
โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#99), store_returns.sr_store_sk (#103)]
232-
โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) (#144)]
231+
โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#99) AS (#99), store_returns.sr_store_sk (#103) AS (#103)]
232+
โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) AS (#144)]
233233
โ””โ”€โ”€ Aggregate(Partial)
234-
โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#99), store_returns.sr_store_sk (#103)]
235-
โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) (#144)]
234+
โ”œโ”€โ”€ group items: [store_returns.sr_customer_sk (#99) AS (#99), store_returns.sr_store_sk (#103) AS (#103)]
235+
โ”œโ”€โ”€ aggregate functions: [Sum(sr_return_amt) AS (#144)]
236236
โ””โ”€โ”€ EvalScalar
237237
โ”œโ”€โ”€ scalars: [store_returns.sr_customer_sk (#99) AS (#99), store_returns.sr_store_sk (#103) AS (#103), store_returns.sr_return_amt (#107) AS (#107), store_returns.sr_returned_date_sk (#96) AS (#151), date_dim.d_date_sk (#116) AS (#152), date_dim.d_year (#122) AS (#153)]
238238
โ””โ”€โ”€ Join(Inner)
239239
โ”œโ”€โ”€ build keys: [date_dim.d_date_sk (#116)]
240240
โ”œโ”€โ”€ probe keys: [store_returns.sr_returned_date_sk (#96)]
241241
โ”œโ”€โ”€ other filters: []
242242
โ”œโ”€โ”€ Scan
243-
โ”‚ โ”œโ”€โ”€ table: default.store_returns
243+
โ”‚ โ”œโ”€โ”€ table: default.store_returns (#4)
244244
โ”‚ โ”œโ”€โ”€ filters: []
245245
โ”‚ โ”œโ”€โ”€ order by: []
246246
โ”‚ โ””โ”€โ”€ limit: NONE
247247
โ””โ”€โ”€ Scan
248-
โ”œโ”€โ”€ table: default.date_dim
248+
โ”œโ”€โ”€ table: default.date_dim (#5)
249249
โ”œโ”€โ”€ filters: [eq(date_dim.d_year (#122), 2001)]
250250
โ”œโ”€โ”€ order by: []
251251
โ””โ”€โ”€ limit: NONE

โ€Žsrc/query/service/tests/it/sql/planner/optimizer/data/yaml/q3.yaml

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -93,13 +93,13 @@ raw_plan: |
9393
โ”œโ”€โ”€ limit: [100]
9494
โ”œโ”€โ”€ offset: [0]
9595
โ””โ”€โ”€ Sort
96-
โ”œโ”€โ”€ sort keys: [default.date_dim.d_year (#6) ASC, derived.SUM(ss_ext_sales_price) (#73) DESC, default.item.i_brand_id (#58) ASC]
96+
โ”œโ”€โ”€ sort keys: [default.date_dim.d_year (#6) ASC NULLS LAST, derived.SUM(ss_ext_sales_price) (#73) DESC NULLS LAST, default.item.i_brand_id (#58) ASC NULLS LAST]
9797
โ”œโ”€โ”€ limit: [NONE]
9898
โ””โ”€โ”€ EvalScalar
9999
โ”œโ”€โ”€ scalars: [dt.d_year (#6) AS (#6), item.i_brand_id (#58) AS (#58), item.i_brand (#59) AS (#59), SUM(ss_ext_sales_price) (#73) AS (#73)]
100100
โ””โ”€โ”€ Aggregate(Initial)
101-
โ”œโ”€โ”€ group items: [dt.d_year (#6), item.i_brand (#59), item.i_brand_id (#58)]
102-
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) (#73)]
101+
โ”œโ”€โ”€ group items: [dt.d_year (#6) AS (#6), item.i_brand (#59) AS (#59), item.i_brand_id (#58) AS (#58)]
102+
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) AS (#73)]
103103
โ””โ”€โ”€ EvalScalar
104104
โ”œโ”€โ”€ scalars: [dt.d_year (#6) AS (#6), store_sales.ss_ext_sales_price (#43) AS (#43), item.i_brand_id (#58) AS (#58), item.i_brand (#59) AS (#59)]
105105
โ””โ”€โ”€ Filter
@@ -113,17 +113,17 @@ raw_plan: |
113113
โ”‚ โ”œโ”€โ”€ probe keys: []
114114
โ”‚ โ”œโ”€โ”€ other filters: []
115115
โ”‚ โ”œโ”€โ”€ Scan
116-
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim
116+
โ”‚ โ”‚ โ”œโ”€โ”€ table: default.date_dim (#0)
117117
โ”‚ โ”‚ โ”œโ”€โ”€ filters: []
118118
โ”‚ โ”‚ โ”œโ”€โ”€ order by: []
119119
โ”‚ โ”‚ โ””โ”€โ”€ limit: NONE
120120
โ”‚ โ””โ”€โ”€ Scan
121-
โ”‚ โ”œโ”€โ”€ table: default.store_sales
121+
โ”‚ โ”œโ”€โ”€ table: default.store_sales (#1)
122122
โ”‚ โ”œโ”€โ”€ filters: []
123123
โ”‚ โ”œโ”€โ”€ order by: []
124124
โ”‚ โ””โ”€โ”€ limit: NONE
125125
โ””โ”€โ”€ Scan
126-
โ”œโ”€โ”€ table: default.item
126+
โ”œโ”€โ”€ table: default.item (#2)
127127
โ”œโ”€โ”€ filters: []
128128
โ”œโ”€โ”€ order by: []
129129
โ””โ”€โ”€ limit: NONE
@@ -133,22 +133,22 @@ optimized_plan: |
133133
โ”œโ”€โ”€ limit: [100]
134134
โ”œโ”€โ”€ offset: [0]
135135
โ””โ”€โ”€ Sort
136-
โ”œโ”€โ”€ sort keys: [default.date_dim.d_year (#6) ASC, derived.SUM(ss_ext_sales_price) (#73) DESC, default.item.i_brand_id (#58) ASC]
136+
โ”œโ”€โ”€ sort keys: [default.date_dim.d_year (#6) ASC NULLS LAST, derived.SUM(ss_ext_sales_price) (#73) DESC NULLS LAST, default.item.i_brand_id (#58) ASC NULLS LAST]
137137
โ”œโ”€โ”€ limit: [100]
138138
โ””โ”€โ”€ Aggregate(Final)
139-
โ”œโ”€โ”€ group items: [dt.d_year (#6), item.i_brand (#59), item.i_brand_id (#58)]
140-
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) (#73)]
139+
โ”œโ”€โ”€ group items: [dt.d_year (#6) AS (#6), item.i_brand (#59) AS (#59), item.i_brand_id (#58) AS (#58)]
140+
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) AS (#73)]
141141
โ””โ”€โ”€ Aggregate(Partial)
142-
โ”œโ”€โ”€ group items: [dt.d_year (#6), item.i_brand (#59), item.i_brand_id (#58)]
143-
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) (#73)]
142+
โ”œโ”€โ”€ group items: [dt.d_year (#6) AS (#6), item.i_brand (#59) AS (#59), item.i_brand_id (#58) AS (#58)]
143+
โ”œโ”€โ”€ aggregate functions: [SUM(ss_ext_sales_price) AS (#73)]
144144
โ””โ”€โ”€ EvalScalar
145145
โ”œโ”€โ”€ scalars: [dt.d_year (#6) AS (#6), store_sales.ss_ext_sales_price (#43) AS (#43), item.i_brand_id (#58) AS (#58), item.i_brand (#59) AS (#59), dt.d_date_sk (#0) AS (#74), store_sales.ss_sold_date_sk (#28) AS (#75), store_sales.ss_item_sk (#30) AS (#76), item.i_item_sk (#51) AS (#77), item.i_manufact_id (#64) AS (#78), dt.d_moy (#8) AS (#79)]
146146
โ””โ”€โ”€ Join(Inner)
147147
โ”œโ”€โ”€ build keys: [store_sales.ss_sold_date_sk (#28)]
148148
โ”œโ”€โ”€ probe keys: [dt.d_date_sk (#0)]
149149
โ”œโ”€โ”€ other filters: []
150150
โ”œโ”€โ”€ Scan
151-
โ”‚ โ”œโ”€โ”€ table: default.date_dim
151+
โ”‚ โ”œโ”€โ”€ table: default.date_dim (#0)
152152
โ”‚ โ”œโ”€โ”€ filters: [eq(date_dim.d_moy (#8), 11)]
153153
โ”‚ โ”œโ”€โ”€ order by: []
154154
โ”‚ โ””โ”€โ”€ limit: NONE
@@ -157,12 +157,12 @@ optimized_plan: |
157157
โ”œโ”€โ”€ probe keys: [store_sales.ss_item_sk (#30)]
158158
โ”œโ”€โ”€ other filters: []
159159
โ”œโ”€โ”€ Scan
160-
โ”‚ โ”œโ”€โ”€ table: default.store_sales
160+
โ”‚ โ”œโ”€โ”€ table: default.store_sales (#1)
161161
โ”‚ โ”œโ”€โ”€ filters: []
162162
โ”‚ โ”œโ”€โ”€ order by: []
163163
โ”‚ โ””โ”€โ”€ limit: NONE
164164
โ””โ”€โ”€ Scan
165-
โ”œโ”€โ”€ table: default.item
165+
โ”œโ”€โ”€ table: default.item (#2)
166166
โ”œโ”€โ”€ filters: [eq(item.i_manufact_id (#64), 128)]
167167
โ”œโ”€โ”€ order by: []
168168
โ””โ”€โ”€ limit: NONE

โ€Žsrc/query/service/tests/it/sql/planner/optimizer/tpcds_test.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,7 +259,7 @@ async fn test_tpcds_optimizer() -> Result<()> {
259259
(test.stats_setup)(&mut raw_plan)?;
260260

261261
// Print and verify raw plan
262-
let raw_plan_str = raw_plan.format_indent(false)?;
262+
let raw_plan_str = raw_plan.format_indent(Default::default())?;
263263
println!("Raw plan:\n{}", raw_plan_str);
264264

265265
// Verify raw plan matches expected
@@ -282,7 +282,7 @@ async fn test_tpcds_optimizer() -> Result<()> {
282282

283283
// Optimize the plan
284284
let optimized_plan = optimize_plan(&ctx, raw_plan).await?;
285-
let optimized_plan_str = optimized_plan.format_indent(false)?;
285+
let optimized_plan_str = optimized_plan.format_indent(Default::default())?;
286286
println!("Optimized plan:\n{}", optimized_plan_str);
287287

288288
// Verify the optimized plan matches expected output

0 commit comments

Comments
ย (0)