mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2026-01-04 04:12:55 +00:00
refactor: Rename table-engine to mito (#539)
* refactor: Rename table-engine to mito * style: Format codes * docs: Update mito engine comment * docs: Explain what is mito in README
This commit is contained in:
68
Cargo.lock
generated
68
Cargo.lock
generated
@@ -807,6 +807,7 @@ dependencies = [
|
||||
"lazy_static",
|
||||
"log-store",
|
||||
"meta-client",
|
||||
"mito",
|
||||
"object-store",
|
||||
"opendal",
|
||||
"regex",
|
||||
@@ -815,7 +816,6 @@ dependencies = [
|
||||
"snafu",
|
||||
"storage",
|
||||
"table",
|
||||
"table-engine",
|
||||
"tempdir",
|
||||
"tokio",
|
||||
]
|
||||
@@ -1739,6 +1739,7 @@ dependencies = [
|
||||
"meta-client",
|
||||
"meta-srv",
|
||||
"metrics",
|
||||
"mito",
|
||||
"object-store",
|
||||
"query",
|
||||
"script",
|
||||
@@ -1751,7 +1752,6 @@ dependencies = [
|
||||
"store-api",
|
||||
"substrait 0.1.0",
|
||||
"table",
|
||||
"table-engine",
|
||||
"tempdir",
|
||||
"tokio",
|
||||
"tokio-stream",
|
||||
@@ -3187,6 +3187,36 @@ dependencies = [
|
||||
"windows-sys",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "mito"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"arc-swap",
|
||||
"async-stream",
|
||||
"async-trait",
|
||||
"chrono",
|
||||
"common-catalog",
|
||||
"common-error",
|
||||
"common-query",
|
||||
"common-recordbatch",
|
||||
"common-telemetry",
|
||||
"common-time",
|
||||
"datafusion",
|
||||
"datafusion-common",
|
||||
"datatypes",
|
||||
"futures",
|
||||
"log-store",
|
||||
"object-store",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"snafu",
|
||||
"storage",
|
||||
"store-api",
|
||||
"table",
|
||||
"tempdir",
|
||||
"tokio",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "moka"
|
||||
version = "0.9.6"
|
||||
@@ -5092,6 +5122,7 @@ dependencies = [
|
||||
"futures",
|
||||
"futures-util",
|
||||
"log-store",
|
||||
"mito",
|
||||
"paste",
|
||||
"query",
|
||||
"ron",
|
||||
@@ -5106,7 +5137,6 @@ dependencies = [
|
||||
"sql",
|
||||
"storage",
|
||||
"table",
|
||||
"table-engine",
|
||||
"tempdir",
|
||||
"tokio",
|
||||
"tokio-test",
|
||||
@@ -5469,10 +5499,10 @@ dependencies = [
|
||||
"common-time",
|
||||
"datatypes",
|
||||
"itertools",
|
||||
"mito",
|
||||
"once_cell",
|
||||
"snafu",
|
||||
"sqlparser",
|
||||
"table-engine",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@@ -5778,36 +5808,6 @@ dependencies = [
|
||||
"tokio-util",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "table-engine"
|
||||
version = "0.1.0"
|
||||
dependencies = [
|
||||
"arc-swap",
|
||||
"async-stream",
|
||||
"async-trait",
|
||||
"chrono",
|
||||
"common-catalog",
|
||||
"common-error",
|
||||
"common-query",
|
||||
"common-recordbatch",
|
||||
"common-telemetry",
|
||||
"common-time",
|
||||
"datafusion",
|
||||
"datafusion-common",
|
||||
"datatypes",
|
||||
"futures",
|
||||
"log-store",
|
||||
"object-store",
|
||||
"serde",
|
||||
"serde_json",
|
||||
"snafu",
|
||||
"storage",
|
||||
"store-api",
|
||||
"table",
|
||||
"tempdir",
|
||||
"tokio",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "tagptr"
|
||||
version = "0.2.0"
|
||||
|
||||
@@ -32,7 +32,7 @@ members = [
|
||||
"src/storage",
|
||||
"src/store-api",
|
||||
"src/table",
|
||||
"src/table-engine",
|
||||
"src/mito",
|
||||
]
|
||||
|
||||
[profile.release]
|
||||
|
||||
@@ -42,6 +42,6 @@ log-store = { path = "../log-store" }
|
||||
object-store = { path = "../object-store" }
|
||||
opendal = "0.17"
|
||||
storage = { path = "../storage" }
|
||||
table-engine = { path = "../table-engine" }
|
||||
mito = { path = "../mito" }
|
||||
tempdir = "0.3"
|
||||
tokio = { version = "1.0", features = ["full"] }
|
||||
|
||||
@@ -372,13 +372,13 @@ pub struct TableEntryValue {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use log_store::fs::noop::NoopLogStore;
|
||||
use mito::config::EngineConfig;
|
||||
use mito::engine::MitoEngine;
|
||||
use object_store::ObjectStore;
|
||||
use storage::config::EngineConfig as StorageEngineConfig;
|
||||
use storage::EngineImpl;
|
||||
use table::metadata::TableType;
|
||||
use table::metadata::TableType::Base;
|
||||
use table_engine::config::EngineConfig;
|
||||
use table_engine::engine::MitoEngine;
|
||||
use tempdir::TempDir;
|
||||
|
||||
use super::*;
|
||||
|
||||
@@ -46,7 +46,7 @@ storage = { path = "../storage" }
|
||||
store-api = { path = "../store-api" }
|
||||
substrait = { path = "../common/substrait" }
|
||||
table = { path = "../table" }
|
||||
table-engine = { path = "../table-engine", features = ["test"] }
|
||||
mito = { path = "../mito", features = ["test"] }
|
||||
tokio = { version = "1.18", features = ["full"] }
|
||||
tokio-stream = { version = "0.1", features = ["net"] }
|
||||
tonic = "0.8"
|
||||
|
||||
@@ -25,6 +25,8 @@ use log_store::fs::config::LogConfig;
|
||||
use log_store::fs::log::LocalFileLogStore;
|
||||
use meta_client::client::{MetaClient, MetaClientBuilder};
|
||||
use meta_client::MetaClientOpts;
|
||||
use mito::config::EngineConfig as TableEngineConfig;
|
||||
use mito::engine::MitoEngine;
|
||||
use object_store::layers::LoggingLayer;
|
||||
use object_store::services::fs::Builder;
|
||||
use object_store::{util, ObjectStore};
|
||||
@@ -33,8 +35,6 @@ use snafu::prelude::*;
|
||||
use storage::config::EngineConfig as StorageEngineConfig;
|
||||
use storage::EngineImpl;
|
||||
use table::table::TableIdProviderRef;
|
||||
use table_engine::config::EngineConfig as TableEngineConfig;
|
||||
use table_engine::engine::MitoEngine;
|
||||
|
||||
use crate::datanode::{DatanodeOptions, ObjectStoreConfig};
|
||||
use crate::error::{
|
||||
|
||||
@@ -19,12 +19,12 @@ use catalog::remote::MetaKvBackend;
|
||||
use common_catalog::consts::MIN_USER_TABLE_ID;
|
||||
use meta_client::client::{MetaClient, MetaClientBuilder};
|
||||
use meta_srv::mocks::MockInfo;
|
||||
use mito::config::EngineConfig as TableEngineConfig;
|
||||
use query::QueryEngineFactory;
|
||||
use storage::config::EngineConfig as StorageEngineConfig;
|
||||
use storage::EngineImpl;
|
||||
use table::metadata::TableId;
|
||||
use table::table::{TableIdProvider, TableIdProviderRef};
|
||||
use table_engine::config::EngineConfig as TableEngineConfig;
|
||||
|
||||
use crate::datanode::DatanodeOptions;
|
||||
use crate::error::Result;
|
||||
@@ -38,7 +38,7 @@ impl Instance {
|
||||
// This method is used in other crate's testing codes, so move it out of "cfg(test)".
|
||||
// TODO(LFC): Delete it when callers no longer need it.
|
||||
pub async fn new_mock() -> Result<Self> {
|
||||
use table_engine::table::test_util::{new_test_object_store, MockEngine, MockMitoEngine};
|
||||
use mito::table::test_util::{new_test_object_store, MockEngine, MockMitoEngine};
|
||||
|
||||
let mock_info = meta_srv::mocks::mock_with_memstore().await;
|
||||
let meta_client = Some(Arc::new(mock_meta_client(mock_info, 0).await));
|
||||
|
||||
@@ -97,6 +97,8 @@ mod tests {
|
||||
use datatypes::schema::{ColumnSchema, SchemaBuilder, SchemaRef};
|
||||
use datatypes::value::Value;
|
||||
use log_store::fs::noop::NoopLogStore;
|
||||
use mito::config::EngineConfig as TableEngineConfig;
|
||||
use mito::engine::MitoEngine;
|
||||
use object_store::services::fs::Builder;
|
||||
use object_store::ObjectStore;
|
||||
use query::QueryEngineFactory;
|
||||
@@ -106,8 +108,6 @@ mod tests {
|
||||
use table::error::Result as TableResult;
|
||||
use table::metadata::TableInfoRef;
|
||||
use table::{Table, TableRef};
|
||||
use table_engine::config::EngineConfig as TableEngineConfig;
|
||||
use table_engine::engine::MitoEngine;
|
||||
use tempdir::TempDir;
|
||||
|
||||
use super::*;
|
||||
|
||||
@@ -20,11 +20,11 @@ use common_catalog::consts::{DEFAULT_CATALOG_NAME, DEFAULT_SCHEMA_NAME, MIN_USER
|
||||
use datatypes::data_type::ConcreteDataType;
|
||||
use datatypes::schema::{ColumnSchema, SchemaBuilder};
|
||||
use frontend::frontend::Mode;
|
||||
use mito::config::EngineConfig;
|
||||
use mito::table::test_util::{new_test_object_store, MockEngine, MockMitoEngine};
|
||||
use snafu::ResultExt;
|
||||
use table::engine::{EngineContext, TableEngineRef};
|
||||
use table::requests::CreateTableRequest;
|
||||
use table_engine::config::EngineConfig;
|
||||
use table_engine::table::test_util::{new_test_object_store, MockEngine, MockMitoEngine};
|
||||
use tempdir::TempDir;
|
||||
|
||||
use crate::datanode::{DatanodeOptions, ObjectStoreConfig};
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
[package]
|
||||
name = "table-engine"
|
||||
name = "mito"
|
||||
version = "0.1.0"
|
||||
edition = "2021"
|
||||
license = "Apache-2.0"
|
||||
8
src/mito/README.md
Normal file
8
src/mito/README.md
Normal file
@@ -0,0 +1,8 @@
|
||||
# Mito
|
||||
|
||||
Mito is GreptimeDB's default table engine.
|
||||
|
||||
## About Mito
|
||||
The Alfa Romeo [MiTo](https://en.wikipedia.org/wiki/Alfa_Romeo_MiTo) is a front-wheel drive, three-door supermini designed by Centro Stile Alfa Romeo.
|
||||
|
||||
> "You can't be a true petrolhead until you've owned an Alfa Romeo." -- by Jeremy Clarkson
|
||||
@@ -64,7 +64,7 @@ fn table_dir(schema_name: &str, table_name: &str) -> String {
|
||||
/// [TableEngine] implementation.
|
||||
///
|
||||
/// About mito <https://en.wikipedia.org/wiki/Alfa_Romeo_MiTo>.
|
||||
/// "you can't be a true petrolhead until you've owned an Alfa Romeo" -- by Jeremy Clarkson
|
||||
/// "You can't be a true petrolhead until you've owned an Alfa Romeo." -- by Jeremy Clarkson
|
||||
#[derive(Clone)]
|
||||
pub struct MitoEngine<S: StorageEngine> {
|
||||
inner: Arc<MitoEngineInner<S>>,
|
||||
@@ -58,7 +58,7 @@ log-store = { path = "../log-store" }
|
||||
ron = "0.7"
|
||||
serde = { version = "1.0", features = ["derive"] }
|
||||
storage = { path = "../storage" }
|
||||
table-engine = { path = "../table-engine", features = ["test"] }
|
||||
mito = { path = "../mito", features = ["test"] }
|
||||
tempdir = "0.3"
|
||||
tokio = { version = "1.18", features = ["full"] }
|
||||
tokio-test = "0.4"
|
||||
|
||||
@@ -96,17 +96,17 @@ impl ScriptManager {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use catalog::CatalogManager;
|
||||
use mito::config::EngineConfig as TableEngineConfig;
|
||||
use mito::table::test_util::new_test_object_store;
|
||||
use query::QueryEngineFactory;
|
||||
use table_engine::config::EngineConfig as TableEngineConfig;
|
||||
use table_engine::table::test_util::new_test_object_store;
|
||||
|
||||
use super::*;
|
||||
type DefaultEngine = MitoEngine<EngineImpl<LocalFileLogStore>>;
|
||||
use log_store::fs::config::LogConfig;
|
||||
use log_store::fs::log::LocalFileLogStore;
|
||||
use mito::engine::MitoEngine;
|
||||
use storage::config::EngineConfig as StorageEngineConfig;
|
||||
use storage::EngineImpl;
|
||||
use table_engine::engine::MitoEngine;
|
||||
use tempdir::TempDir;
|
||||
|
||||
#[tokio::test]
|
||||
|
||||
@@ -15,4 +15,4 @@ itertools = "0.10"
|
||||
once_cell = "1.10"
|
||||
snafu = { version = "0.7", features = ["backtraces"] }
|
||||
sqlparser = "0.15.0"
|
||||
table-engine = { path = "../table-engine" }
|
||||
mito = { path = "../mito" }
|
||||
|
||||
@@ -15,13 +15,13 @@
|
||||
use std::cmp::Ordering;
|
||||
|
||||
use itertools::Itertools;
|
||||
use mito::engine;
|
||||
use once_cell::sync::Lazy;
|
||||
use snafu::{ensure, OptionExt, ResultExt};
|
||||
use sqlparser::ast::Value;
|
||||
use sqlparser::dialect::keywords::Keyword;
|
||||
use sqlparser::parser::IsOptional::Mandatory;
|
||||
use sqlparser::tokenizer::{Token, Word};
|
||||
use table_engine::engine;
|
||||
|
||||
use crate::ast::{ColumnDef, Ident, TableConstraint, Value as SqlValue};
|
||||
use crate::error::{self, InvalidTimeIndexSnafu, Result, SyntaxSnafu};
|
||||
|
||||
Reference in New Issue
Block a user