Skip to content

Commit de5392d

Browse files
committed
refactor: Remove unused re-calculate table statistic logic when creating table with snapshot_location
1 parent 04cb8f2 commit de5392d

File tree

7 files changed

+3
-70
lines changed

7 files changed

+3
-70
lines changed

src/query/ast/tests/it/testdata/stmt.txt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15370,9 +15370,9 @@ AlterTable(
1537015370

1537115371

1537215372
---------- Input ----------
15373-
ALTER TABLE t SET OPTIONS(SNAPSHOT_LOCATION='1/7/_ss/101fd790dbbe4238a31a8f2e2f856179_v4.mpk',block_per_segment = 500);
15373+
ALTER TABLE t SET OPTIONS(block_per_segment = 500);
1537415374
---------- Output ---------
15375-
ALTER TABLE t SET OPTIONS (block_per_segment = '500', snapshot_location = '1/7/_ss/101fd790dbbe4238a31a8f2e2f856179_v4.mpk')
15375+
ALTER TABLE t SET OPTIONS (block_per_segment = '500')
1537615376
---------- AST ------------
1537715377
AlterTable(
1537815378
AlterTableStmt {
@@ -15401,7 +15401,6 @@ AlterTable(
1540115401
action: SetOptions {
1540215402
set_options: {
1540315403
"block_per_segment": "500",
15404-
"snapshot_location": "1/7/_ss/101fd790dbbe4238a31a8f2e2f856179_v4.mpk",
1540515404
},
1540615405
},
1540715406
},

src/query/ee/src/attach_table/handler.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,6 @@ use databend_enterprise_attach_table::AttachTableHandlerWrapper;
3333
use databend_storages_common_cache::LoadParams;
3434
use databend_storages_common_table_meta::meta::TableSnapshot;
3535
use databend_storages_common_table_meta::meta::Versioned;
36-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
3736

3837
pub struct RealAttachTableHandler {}
3938
#[async_trait::async_trait]
@@ -66,7 +65,6 @@ impl AttachTableHandler for RealAttachTableHandler {
6665
let root = info.root();
6766
let snapshot_loc = snapshot_full_path[root.len()..].to_string();
6867
let mut options = plan.options.clone();
69-
options.insert(OPT_KEY_SNAPSHOT_LOCATION.to_string(), snapshot_loc.clone());
7068

7169
let params = LoadParams {
7270
location: snapshot_loc.clone(),

src/query/ee/src/stream/handler.rs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ use databend_storages_common_table_meta::table::OPT_KEY_CHANGE_TRACKING;
4040
use databend_storages_common_table_meta::table::OPT_KEY_CHANGE_TRACKING_BEGIN_VER;
4141
use databend_storages_common_table_meta::table::OPT_KEY_DATABASE_ID;
4242
use databend_storages_common_table_meta::table::OPT_KEY_MODE;
43-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
4443
use databend_storages_common_table_meta::table::OPT_KEY_SOURCE_DATABASE_ID;
4544
use databend_storages_common_table_meta::table::OPT_KEY_SOURCE_TABLE_ID;
4645
use databend_storages_common_table_meta::table::OPT_KEY_TABLE_VER;
@@ -128,9 +127,6 @@ impl StreamHandler for RealStreamHandler {
128127
options.insert(OPT_KEY_SOURCE_DATABASE_ID.to_owned(), db_id.to_string());
129128
options.insert(OPT_KEY_SOURCE_TABLE_ID.to_string(), table_id.to_string());
130129
options.insert(OPT_KEY_TABLE_VER.to_string(), change_desc.seq.to_string());
131-
if let Some(snapshot_loc) = change_desc.location {
132-
options.insert(OPT_KEY_SNAPSHOT_LOCATION.to_string(), snapshot_loc);
133-
}
134130

135131
let req = CreateTableReq {
136132
create_option: plan.create_option,

src/query/service/src/interpreters/common/stream.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ use databend_common_storages_fuse::TableContext;
2929
use databend_common_storages_stream::stream_table::StreamTable;
3030
use databend_storages_common_table_meta::table::OPT_KEY_DATABASE_ID;
3131
use databend_storages_common_table_meta::table::OPT_KEY_DATABASE_NAME;
32-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
3332
use databend_storages_common_table_meta::table::OPT_KEY_SOURCE_DATABASE_ID;
3433
use databend_storages_common_table_meta::table::OPT_KEY_TABLE_NAME;
3534
use databend_storages_common_table_meta::table::OPT_KEY_TABLE_VER;
@@ -58,9 +57,6 @@ pub async fn dml_build_update_stream_req(
5857
let table_version = inner_fuse.get_table_info().ident.seq;
5958
let mut options = stream.options().clone();
6059
options.insert(OPT_KEY_TABLE_VER.to_string(), table_version.to_string());
61-
if let Some(snapshot_loc) = inner_fuse.snapshot_loc() {
62-
options.insert(OPT_KEY_SNAPSHOT_LOCATION.to_string(), snapshot_loc);
63-
}
6460

6561
// To be compatible with older versions, set source database id.
6662
if !options.contains_key(OPT_KEY_SOURCE_DATABASE_ID) {
@@ -118,9 +114,6 @@ pub async fn query_build_update_stream_req(
118114
let table_version = inner_fuse.get_table_info().ident.seq;
119115
let mut options = stream.options().clone();
120116
options.insert(OPT_KEY_TABLE_VER.to_string(), table_version.to_string());
121-
if let Some(snapshot_loc) = inner_fuse.snapshot_loc() {
122-
options.insert(OPT_KEY_SNAPSHOT_LOCATION.to_string(), snapshot_loc);
123-
}
124117
let mut new_table_meta = stream_info.meta.clone();
125118
new_table_meta.options = options;
126119
new_table_meta.updated_on = Utc::now();

src/query/service/src/interpreters/interpreter_table_add_column.rs

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ use databend_common_storages_stream::stream_table::STREAM_ENGINE;
4040
use databend_storages_common_table_meta::meta::TableSnapshot;
4141
use databend_storages_common_table_meta::meta::Versioned;
4242
use databend_storages_common_table_meta::readers::snapshot_reader::TableSnapshotAccessor;
43-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
4443
use log::info;
4544

4645
use crate::interpreters::interpreter_table_create::is_valid_column;
@@ -219,12 +218,6 @@ pub(crate) async fn commit_table_meta(
219218
let new_snapshot_location =
220219
generate_new_snapshot(ctx, fuse_tbl, &new_table_meta.schema).await?;
221220

222-
if let Some(new_snapshot_location) = &new_snapshot_location {
223-
new_table_meta.options.insert(
224-
OPT_KEY_SNAPSHOT_LOCATION.to_owned(),
225-
new_snapshot_location.clone(),
226-
);
227-
};
228221

229222
let req = UpdateTableMetaReq {
230223
table_id,

src/query/service/src/interpreters/interpreter_table_create.rs

Lines changed: 1 addition & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@ use std::sync::Arc;
1818
use chrono::Utc;
1919
use databend_common_ast::ast::Engine;
2020
use databend_common_base::runtime::GlobalIORuntime;
21-
use databend_common_config::GlobalConfig;
2221
use databend_common_exception::ErrorCode;
2322
use databend_common_exception::Result;
2423
use databend_common_expression::is_internal_column;
@@ -48,21 +47,16 @@ use databend_common_pipeline_core::always_callback;
4847
use databend_common_pipeline_core::ExecutionInfo;
4948
use databend_common_sql::plans::CreateTablePlan;
5049
use databend_common_sql::DefaultExprBinder;
51-
use databend_common_storages_fuse::io::MetaReaders;
5250
use databend_common_storages_fuse::FuseSegmentFormat;
5351
use databend_common_storages_fuse::FuseStorageFormat;
5452
use databend_common_storages_fuse::FUSE_OPT_KEY_ENABLE_AUTO_ANALYZE;
5553
use databend_common_storages_fuse::FUSE_OPT_KEY_ENABLE_AUTO_VACUUM;
5654
use databend_common_users::RoleCacheManager;
5755
use databend_common_users::UserApiProvider;
5856
use databend_enterprise_attach_table::get_attach_table_handler;
59-
use databend_storages_common_cache::LoadParams;
60-
use databend_storages_common_table_meta::meta::TableSnapshot;
61-
use databend_storages_common_table_meta::meta::Versioned;
6257
use databend_storages_common_table_meta::table::OPT_KEY_COMMENT;
6358
use databend_storages_common_table_meta::table::OPT_KEY_ENABLE_COPY_DEDUP_FULL_PATH;
6459
use databend_storages_common_table_meta::table::OPT_KEY_SEGMENT_FORMAT;
65-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
6660
use databend_storages_common_table_meta::table::OPT_KEY_STORAGE_FORMAT;
6761
use databend_storages_common_table_meta::table::OPT_KEY_STORAGE_PREFIX;
6862
use databend_storages_common_table_meta::table::OPT_KEY_TEMP_PREFIX;
@@ -348,37 +342,7 @@ impl CreateTableInterpreter {
348342
#[async_backtrace::framed]
349343
async fn create_table(&self) -> Result<PipelineBuildResult> {
350344
let catalog = self.ctx.get_catalog(self.plan.catalog.as_str()).await?;
351-
let mut stat = None;
352-
if !GlobalConfig::instance().query.management_mode {
353-
if let Some(snapshot_loc) = self.plan.options.get(OPT_KEY_SNAPSHOT_LOCATION) {
354-
// using application level data operator is a temp workaround
355-
// please see discussions https://github.com/datafuselabs/databend/pull/10424
356-
let operator = self.ctx.get_application_level_data_operator()?.operator();
357-
let reader = MetaReaders::table_snapshot_reader(operator);
358-
359-
let params = LoadParams {
360-
location: snapshot_loc.clone(),
361-
len_hint: None,
362-
ver: TableSnapshot::VERSION,
363-
put_cache: true,
364-
};
365-
366-
let snapshot = reader.read(&params).await?;
367-
stat = Some(TableStatistics {
368-
number_of_rows: snapshot.summary.row_count,
369-
data_bytes: snapshot.summary.uncompressed_byte_size,
370-
compressed_data_bytes: snapshot.summary.compressed_byte_size,
371-
index_data_bytes: snapshot.summary.index_size,
372-
bloom_index_size: snapshot.summary.bloom_index_size,
373-
ngram_index_size: snapshot.summary.ngram_index_size,
374-
inverted_index_size: snapshot.summary.inverted_index_size,
375-
vector_index_size: snapshot.summary.vector_index_size,
376-
virtual_column_size: snapshot.summary.virtual_column_size,
377-
number_of_segments: Some(snapshot.segments.len() as u64),
378-
number_of_blocks: Some(snapshot.summary.block_count),
379-
});
380-
}
381-
}
345+
let stat = None;
382346
let req = if let Some(storage_prefix) = self.plan.options.get(OPT_KEY_STORAGE_PREFIX) {
383347
self.build_attach_request(storage_prefix).await
384348
} else {

src/query/service/src/interpreters/interpreter_table_set_options.rs

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@ use databend_storages_common_table_meta::table::OPT_KEY_CHANGE_TRACKING_BEGIN_VE
4646
use databend_storages_common_table_meta::table::OPT_KEY_CLUSTER_TYPE;
4747
use databend_storages_common_table_meta::table::OPT_KEY_DATABASE_ID;
4848
use databend_storages_common_table_meta::table::OPT_KEY_SEGMENT_FORMAT;
49-
use databend_storages_common_table_meta::table::OPT_KEY_SNAPSHOT_LOCATION;
5049
use databend_storages_common_table_meta::table::OPT_KEY_STORAGE_FORMAT;
5150
use databend_storages_common_table_meta::table::OPT_KEY_TEMP_PREFIX;
5251
use log::error;
@@ -172,15 +171,6 @@ impl Interpreter for SetOptionsInterpreter {
172171
is_valid_bloom_index_columns(&self.plan.set_options, table.schema())?;
173172
is_valid_approx_distinct_columns(&self.plan.set_options, table.schema())?;
174173

175-
if let Some(new_snapshot_location) =
176-
set_segment_format(self.ctx.clone(), table.clone(), &self.plan.set_options).await?
177-
{
178-
options_map.insert(
179-
OPT_KEY_SNAPSHOT_LOCATION.to_string(),
180-
Some(new_snapshot_location),
181-
);
182-
}
183-
184174
let req = UpsertTableOptionReq {
185175
table_id: table.get_id(),
186176
seq: MatchSeq::Exact(table_version),

0 commit comments

Comments
 (0)