mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-01-07 13:52:59 +00:00
fix: append table id to table data dir (#640)
This commit is contained in:
@@ -57,8 +57,8 @@ fn region_id(table_id: TableId, n: u32) -> RegionId {
|
||||
}
|
||||
|
||||
#[inline]
|
||||
fn table_dir(schema_name: &str, table_name: &str) -> String {
|
||||
format!("{}/{}/", schema_name, table_name)
|
||||
fn table_dir(schema_name: &str, table_name: &str, table_id: TableId) -> String {
|
||||
format!("{}/{}_{}/", schema_name, table_name, table_id)
|
||||
}
|
||||
|
||||
/// [TableEngine] implementation.
|
||||
@@ -317,7 +317,7 @@ impl<S: StorageEngine> MitoEngineInner<S> {
|
||||
}
|
||||
}
|
||||
|
||||
let table_dir = table_dir(schema_name, table_name);
|
||||
let table_dir = table_dir(schema_name, table_name, table_id);
|
||||
let opts = CreateOptions {
|
||||
parent_dir: table_dir.clone(),
|
||||
};
|
||||
@@ -396,13 +396,13 @@ impl<S: StorageEngine> MitoEngineInner<S> {
|
||||
return Ok(Some(table));
|
||||
}
|
||||
|
||||
let table_id = request.table_id;
|
||||
let engine_ctx = StorageEngineContext::default();
|
||||
let table_dir = table_dir(schema_name, table_name);
|
||||
let table_dir = table_dir(schema_name, table_name, table_id);
|
||||
let opts = OpenOptions {
|
||||
parent_dir: table_dir.to_string(),
|
||||
};
|
||||
|
||||
let table_id = request.table_id;
|
||||
// TODO(dennis): supports multi regions;
|
||||
assert_eq!(request.region_numbers.len(), 1);
|
||||
let region_number = request.region_numbers[0];
|
||||
@@ -642,8 +642,14 @@ mod tests {
|
||||
|
||||
#[test]
|
||||
fn test_table_dir() {
|
||||
assert_eq!("public/test_table/", table_dir("public", "test_table"));
|
||||
assert_eq!("prometheus/demo/", table_dir("prometheus", "demo"));
|
||||
assert_eq!(
|
||||
"public/test_table_1024/",
|
||||
table_dir("public", "test_table", 1024)
|
||||
);
|
||||
assert_eq!(
|
||||
"prometheus/demo_1024/",
|
||||
table_dir("prometheus", "demo", 1024)
|
||||
);
|
||||
}
|
||||
|
||||
#[tokio::test]
|
||||
|
||||
Reference in New Issue
Block a user