diff --git a/.gitignore b/.gitignore index 4e1a71d3..30f0e6ba 100644 --- a/.gitignore +++ b/.gitignore @@ -23,10 +23,10 @@ Cargo.lock /hello_world /transaction -fncksql_data -fncksql_bench +kitesql_data +kitesql_bench sqlite_bench -fnck_sql_tpcc +kite_sql_tpcc copy.csv tests/data/row_20000.csv \ No newline at end of file diff --git a/Cargo.toml b/Cargo.toml index 3d7c4b1c..b82542a9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,21 +1,21 @@ # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [package] -name = "fnck_sql" -version = "0.0.10" +name = "kite_sql" +version = "0.1.0" edition = "2021" authors = ["Kould ", "Xwg "] description = "SQL as a Function for Rust" -documentation = "https://docs.rs/fnck_sql/latest/fnck_sql/" +documentation = "https://docs.rs/kite_sql/latest/kite_sql/" license = "Apache-2.0" repository = "https://github.com/KipData/KipSQL" readme = "README.md" keywords = ["sql", "sqlite", "database", "mysql"] categories = ["development-tools", "database"] -default-run = "fnck_sql" +default-run = "kite_sql" [[bin]] -name = "fnck_sql" +name = "kite_sql" path = "src/bin/server.rs" required-features = ["net"] @@ -51,7 +51,7 @@ regex = { version = "1" } rocksdb = { version = "0.22" } rust_decimal = { version = "1" } serde = { version = "1", features = ["derive", "rc"] } -fnck_sql_serde_macros = { version = "0.1.0", path = "fnck_sql_serde_macros" } +kite_sql_serde_macros = { version = "0.1.0", path = "kite_sql_serde_macros" } siphasher = { version = "1", features = ["serde"] } sqlparser = { version = "0.34", features = ["serde"] } thiserror = { version = "1" } @@ -82,7 +82,7 @@ pprof = { version = "0.13", features = ["flamegraph", "criterion"] } members = [ "tests/sqllogictest", "tests/macros-test", - "fnck_sql_serde_macros", + "kite_sql_serde_macros", "tpcc"] [profile.release] diff --git a/Dockerfile b/Dockerfile index fdd49439..f0b82e7a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -15,12 +15,12 @@ RUN echo "deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib n echo "deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free" >> /etc/apt/sources.list RUN apt-get update && apt-get install -y postgresql-client -ARG APP_SERVER=fnck_sql +ARG APP_SERVER=kite_sql -WORKDIR /fnck_sql +WORKDIR /kite_sql EXPOSE 5432 COPY --from=builder /builder/target/release/${APP_SERVER} ${APP_SERVER} -ENTRYPOINT ["./fnck_sql", "--ip", "0.0.0.0"] \ No newline at end of file +ENTRYPOINT ["./kite_sql", "--ip", "0.0.0.0"] \ No newline at end of file diff --git a/README.md b/README.md index 3c4a0ad4..7bcf7913 100755 --- a/README.md +++ b/README.md @@ -1,38 +1,32 @@ -
-Built by @KipData
-
-
-███████╗███╗   ██╗ ██████╗██╗  ██╗    ███████╗ ██████╗ ██╗     
-██╔════╝████╗  ██║██╔════╝██║ ██╔╝    ██╔════╝██╔═══██╗██║     
-█████╗  ██╔██╗ ██║██║     █████╔╝     ███████╗██║   ██║██║     
-██╔══╝  ██║╚██╗██║██║     ██╔═██╗     ╚════██║██║▄▄ ██║██║     
-██║     ██║ ╚████║╚██████╗██║  ██╗    ███████║╚██████╔╝███████╗
-╚═╝     ╚═╝  ╚═══╝ ╚═════╝╚═╝  ╚═╝    ╚══════╝ ╚══▀▀═╝ ╚══════╝
+

+ + + + KiteSQL Logo + +

------------------------------------ -🖕 -

SQL as a Function for Rust

- +  

- CI - - - github star - github fork + CI + + + github star + github fork

## Introduction -**FnckSQL** is a lightweight embedded database inspired by **MyRocks** and **SQLite** and completely coded in Rust. It aims to provide a more user-friendly, lightweight, and low-loss RDBMS for Rust programming so that the APP does not rely on other complex components. can perform complex relational data operations +**KiteSQL** is a lightweight embedded database inspired by **MyRocks** and **SQLite** and completely coded in Rust. It aims to provide a more user-friendly, lightweight, and low-loss RDBMS for Rust programming so that the APP does not rely on other complex components. can perform complex relational data operations ## Key Features - A lightweight embedded SQL database fully rewritten in Rust @@ -46,16 +40,16 @@ Built by @KipData ## Examples ```rust -let fnck_sql = DataBaseBuilder::path("./data").build()?; +let kite_sql = DataBaseBuilder::path("./data").build()?; -fnck_sql +kite_sql .run("create table if not exists t1 (c1 int primary key, c2 int)")? .done()?; -fnck_sql +kite_sql .run("insert into t1 values(0, 0), (1, 1)")? .done()?; -for tuple in fnck_sql.run("select * from t1")? { +for tuple in kite_sql.run("select * from t1")? { println!("{:?}", tuple?); } ``` @@ -84,15 +78,15 @@ Order-Status : 0.053 (0.175) #### 👉[check more](tpcc/README.md) ## Roadmap -- Get [SQL 2016](https://github.com/KipData/FnckSQL/issues/130) mostly supported -- LLVM JIT: [Perf: TPCC](https://github.com/KipData/FnckSQL/issues/247) +- Get [SQL 2016](https://github.com/KipData/KiteSQL/issues/130) mostly supported +- LLVM JIT: [Perf: TPCC](https://github.com/KipData/KiteSQL/issues/247) ## License -FnckSQL uses the [Apache 2.0 license][1] to strike a balance between +KiteSQL uses the [Apache 2.0 license][1] to strike a balance between open contributions and allowing you to use the software however you want. -[1]: +[1]: ## Contributors -[![](https://opencollective.com/fncksql/contributors.svg?width=890&button=false)](https://github.com/KipData/FnckSQL/graphs/contributors) +[![](https://opencollective.com/kitesql/contributors.svg?width=890&button=false)](https://github.com/KipData/KiteSQL/graphs/contributors) diff --git a/benchmarks/query_benchmark.rs b/benchmarks/query_benchmark.rs index 605edd54..982925aa 100644 --- a/benchmarks/query_benchmark.rs +++ b/benchmarks/query_benchmark.rs @@ -1,15 +1,15 @@ use criterion::{criterion_group, criterion_main, Criterion}; -use fnck_sql::db::{DataBaseBuilder, ResultIter}; -use fnck_sql::errors::DatabaseError; use indicatif::{ProgressBar, ProgressStyle}; use itertools::Itertools; +use kite_sql::db::{DataBaseBuilder, ResultIter}; +use kite_sql::errors::DatabaseError; #[cfg(unix)] use pprof::criterion::{Output, PProfProfiler}; use sqlite::Error; use std::fs; use std::path::Path; -const QUERY_BENCH_FNCK_SQL_PATH: &'static str = "./fncksql_bench"; +const QUERY_BENCH_kite_sql_PATH: &'static str = "./kitesql_bench"; const QUERY_BENCH_SQLITE_PATH: &'static str = "./sqlite_bench"; const TABLE_ROW_NUM: u64 = 200_000; @@ -24,8 +24,8 @@ fn query_cases() -> Vec<(&'static str, &'static str)> { ] } -fn init_fncksql_query_bench() -> Result<(), DatabaseError> { - let database = DataBaseBuilder::path(QUERY_BENCH_FNCK_SQL_PATH).build()?; +fn init_kitesql_query_bench() -> Result<(), DatabaseError> { + let database = DataBaseBuilder::path(QUERY_BENCH_kite_sql_PATH).build()?; database .run("create table t1 (c1 int primary key, c2 int)")? .done()?; @@ -84,21 +84,21 @@ fn query_on_execute(c: &mut Criterion) { init_sqlite_query_bench().unwrap(); } - if !path_exists_and_is_directory(QUERY_BENCH_FNCK_SQL_PATH) { + if !path_exists_and_is_directory(QUERY_BENCH_kite_sql_PATH) { println!( - "FnckSQL: The table is not initialized and data insertion is started. => {}", + "KiteSQL: The table is not initialized and data insertion is started. => {}", TABLE_ROW_NUM ); - init_fncksql_query_bench().unwrap(); + init_kitesql_query_bench().unwrap(); } - let database = DataBaseBuilder::path(QUERY_BENCH_FNCK_SQL_PATH) + let database = DataBaseBuilder::path(QUERY_BENCH_kite_sql_PATH) .build() .unwrap(); println!("Table initialization completed"); for (name, case) in query_cases() { - c.bench_function(format!("FnckSQL: {} by '{}'", name, case).as_str(), |b| { + c.bench_function(format!("KiteSQL: {} by '{}'", name, case).as_str(), |b| { b.iter(|| { for tuple in database.run(case).unwrap() { let _ = tuple.unwrap(); diff --git a/docs/features.md b/docs/features.md index 094789ee..efe9ecb9 100644 --- a/docs/features.md +++ b/docs/features.md @@ -37,7 +37,7 @@ scala_function!(TestFunction::test(LogicalType::Integer, LogicalType::Integer) - Ok(plus_unary_evaluator.unary_eval(&value)) }); -let fnck_sql = DataBaseBuilder::path("./data") +let kite_sql = DataBaseBuilder::path("./data") .register_scala_function(TestFunction::new()) .build()?; ``` @@ -57,7 +57,7 @@ table_function!(MyTableFunction::test_numbers(LogicalType::Integer) -> [c1: Logi ] }))) as Box>>) })); -let fnck_sql = DataBaseBuilder::path("./data") +let kite_sql = DataBaseBuilder::path("./data") .register_table_function(MyTableFunction::new()) .build()?; ``` diff --git a/examples/hello_world.rs b/examples/hello_world.rs index ec5b02e6..60a0eff1 100644 --- a/examples/hello_world.rs +++ b/examples/hello_world.rs @@ -1,7 +1,7 @@ -use fnck_sql::db::{DataBaseBuilder, ResultIter}; -use fnck_sql::errors::DatabaseError; -use fnck_sql::implement_from_tuple; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DataBaseBuilder, ResultIter}; +use kite_sql::errors::DatabaseError; +use kite_sql::implement_from_tuple; +use kite_sql::types::value::DataValue; #[derive(Default, Debug, PartialEq)] struct MyStruct { diff --git a/examples/transaction.rs b/examples/transaction.rs index 9d4d0baf..c5f3d908 100644 --- a/examples/transaction.rs +++ b/examples/transaction.rs @@ -1,5 +1,5 @@ -use fnck_sql::db::{DataBaseBuilder, ResultIter}; -use fnck_sql::errors::DatabaseError; +use kite_sql::db::{DataBaseBuilder, ResultIter}; +use kite_sql::errors::DatabaseError; fn main() -> Result<(), DatabaseError> { let database = DataBaseBuilder::path("./transaction").build()?; diff --git a/fnck_sql_serde_macros/Cargo.toml b/kite_sql_serde_macros/Cargo.toml similarity index 73% rename from fnck_sql_serde_macros/Cargo.toml rename to kite_sql_serde_macros/Cargo.toml index 6945493b..ce40ab3f 100644 --- a/fnck_sql_serde_macros/Cargo.toml +++ b/kite_sql_serde_macros/Cargo.toml @@ -1,8 +1,8 @@ [package] -name = "fnck_sql_serde_macros" +name = "kite_sql_serde_macros" version = "0.1.0" edition = "2021" -description = "SerdeMacros for FnckSQL" +description = "SerdeMacros for KiteSQL" license = "Apache-2.0" [dependencies] diff --git a/fnck_sql_serde_macros/src/lib.rs b/kite_sql_serde_macros/src/lib.rs similarity index 100% rename from fnck_sql_serde_macros/src/lib.rs rename to kite_sql_serde_macros/src/lib.rs diff --git a/fnck_sql_serde_macros/src/reference_serialization.rs b/kite_sql_serde_macros/src/reference_serialization.rs similarity index 100% rename from fnck_sql_serde_macros/src/reference_serialization.rs rename to kite_sql_serde_macros/src/reference_serialization.rs diff --git a/src/bin/server.rs b/src/bin/server.rs index dbf0d28a..39973c86 100644 --- a/src/bin/server.rs +++ b/src/bin/server.rs @@ -1,11 +1,11 @@ use async_trait::async_trait; use clap::Parser; -use fnck_sql::db::{DBTransaction, DataBaseBuilder, Database, ResultIter}; -use fnck_sql::errors::DatabaseError; -use fnck_sql::storage::rocksdb::RocksStorage; -use fnck_sql::types::tuple::{Schema, SchemaRef, Tuple}; -use fnck_sql::types::LogicalType; use futures::stream; +use kite_sql::db::{DBTransaction, DataBaseBuilder, Database, ResultIter}; +use kite_sql::errors::DatabaseError; +use kite_sql::storage::rocksdb::RocksStorage; +use kite_sql::types::tuple::{Schema, SchemaRef, Tuple}; +use kite_sql::types::LogicalType; use log::{error, info, LevelFilter}; use parking_lot::Mutex; use pgwire::api::auth::noop::NoopStartupHandler; @@ -25,27 +25,16 @@ use std::sync::Arc; use tokio::net::TcpListener; pub(crate) const BANNER: &str = " -███████╗███╗ ██╗ ██████╗██╗ ██╗ ███████╗ ██████╗ ██╗ -██╔════╝████╗ ██║██╔════╝██║ ██╔╝ ██╔════╝██╔═══██╗██║ -█████╗ ██╔██╗ ██║██║ █████╔╝ ███████╗██║ ██║██║ -██╔══╝ ██║╚██╗██║██║ ██╔═██╗ ╚════██║██║▄▄ ██║██║ -██║ ██║ ╚████║╚██████╗██║ ██╗ ███████║╚██████╔╝███████╗ -╚═╝ ╚═╝ ╚═══╝ ╚═════╝╚═╝ ╚═╝ ╚══════╝ ╚══▀▀═╝ ╚══════╝ +oooo oooo o8o . .oooooo..o .oooooo. ooooo +`888 .8P' `\"' .o8 d8P' `Y8 d8P' `Y8b `888' + 888 d8' oooo .o888oo .ooooo. Y88bo. 888 888 888 + 88888[ `888 888 d88' `88b `\"Y8888o. 888 888 888 + 888`88b. 888 888 888ooo888 `\"Y88b 888 888 888 + 888 `88b. 888 888 . 888 .o oo .d8P `88b d88b 888 o +o888o o888o o888o \"888\" `Y8bod8P' 8\"\"88888P' `Y8bood8P'Ybd' o888ooooood8 "; -pub const BLOOM: &str = " - _ ._ _ , _ ._ - (_ ' ( ` )_ .__) - ( ( ( ) `) ) _) -- --=(;;(----(-----)-----);;)==-- - - (__ (_ (_ . _) _) ,__) - `~~`\\ ' . /`~~` - ; ; - / \\ -_____________/_ __ \\_____________ -"; - #[derive(Parser, Debug)] #[command(author, version, about, long_about = None)] struct Args { @@ -53,7 +42,7 @@ struct Args { ip: String, #[clap(long, default_value = "5432")] port: u16, - #[clap(long, default_value = "./fncksql_data")] + #[clap(long, default_value = "./kitesql_data")] path: String, } @@ -76,15 +65,15 @@ impl DerefMut for TransactionPtr { unsafe impl Send for TransactionPtr {} unsafe impl Sync for TransactionPtr {} -pub struct FnckSQLBackend { +pub struct KiteSQLBackend { inner: Arc>, } -impl FnckSQLBackend { - pub fn new(path: impl Into + Send) -> Result { +impl KiteSQLBackend { + pub fn new(path: impl Into + Send) -> Result { let database = DataBaseBuilder::path(path).build()?; - Ok(FnckSQLBackend { + Ok(KiteSQLBackend { inner: Arc::new(database), }) } @@ -350,15 +339,15 @@ async fn main() { let args = Args::parse(); info!("{} \nVersion: {}\n", BANNER, env!("CARGO_PKG_VERSION")); - info!(":) Welcome to the FnckSQL🖕"); + info!(":) Welcome to the KiteSQL🪁"); info!("Listen on port {}", args.port); - info!("Tips🔞: "); + info!("Tips: "); info!( "1. all data is in the \'{}\' folder in the directory where the application is run", args.path ); - let backend = FnckSQLBackend::new(args.path).unwrap(); + let backend = KiteSQLBackend::new(args.path).unwrap(); let factory = Arc::new(CustomBackendFactory::new(Arc::new(SessionBackend::new( backend.inner, )))); @@ -371,7 +360,7 @@ async fn main() { error!("[Listener][Failed To Accept]: {}", err); } } - _ = quit() => info!("{BLOOM}") + _ = quit() => info!("Bye!") } } diff --git a/src/binder/copy.rs b/src/binder/copy.rs index 7e2bdf54..e0b0efe6 100644 --- a/src/binder/copy.rs +++ b/src/binder/copy.rs @@ -9,7 +9,7 @@ use crate::planner::operator::copy_to_file::CopyToFileOperator; use crate::planner::operator::table_scan::TableScanOperator; use crate::planner::operator::Operator; use crate::planner::Childrens; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use serde::{Deserialize, Serialize}; use sqlparser::ast::{CopyOption, CopySource, CopyTarget}; diff --git a/src/catalog/column.rs b/src/catalog/column.rs index db84d16a..aa1289cb 100644 --- a/src/catalog/column.rs +++ b/src/catalog/column.rs @@ -3,7 +3,7 @@ use crate::errors::DatabaseError; use crate::expression::ScalarExpression; use crate::types::value::DataValue; use crate::types::{ColumnId, LogicalType}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use sqlparser::ast::CharLengthUnits; use std::hash::Hash; use std::ops::Deref; diff --git a/src/catalog/table.rs b/src/catalog/table.rs index c3a9e970..94ccc45a 100644 --- a/src/catalog/table.rs +++ b/src/catalog/table.rs @@ -3,8 +3,8 @@ use crate::errors::DatabaseError; use crate::types::index::{IndexMeta, IndexMetaRef, IndexType}; use crate::types::tuple::SchemaRef; use crate::types::{ColumnId, LogicalType}; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::collections::BTreeMap; use std::sync::Arc; use std::{slice, vec}; diff --git a/src/catalog/view.rs b/src/catalog/view.rs index 979e3538..a6800da4 100644 --- a/src/catalog/view.rs +++ b/src/catalog/view.rs @@ -1,6 +1,6 @@ use crate::catalog::TableName; use crate::planner::LogicalPlan; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/db.rs b/src/db.rs index e389a999..ab457b6b 100644 --- a/src/db.rs +++ b/src/db.rs @@ -515,8 +515,8 @@ pub(crate) mod test { #[test] fn test_udf() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - let mut iter = fnck_sql.run("select current_date()")?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let mut iter = kite_sql.run("select current_date()")?; assert_eq!( iter.schema(), @@ -542,8 +542,8 @@ pub(crate) mod test { #[test] fn test_udtf() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - let mut iter = fnck_sql.run( + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let mut iter = kite_sql.run( "SELECT * FROM (select * from table(numbers(10)) a ORDER BY number LIMIT 5) OFFSET 3", )?; @@ -570,20 +570,20 @@ pub(crate) mod test { #[test] fn test_prepare_statment() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + kite_sql .run("create table t1 (a int primary key, b int)")? .done()?; - fnck_sql.run("insert into t1 values(0, 0)")?.done()?; - fnck_sql.run("insert into t1 values(1, 1)")?.done()?; - fnck_sql.run("insert into t1 values(2, 2)")?.done()?; + kite_sql.run("insert into t1 values(0, 0)")?.done()?; + kite_sql.run("insert into t1 values(1, 1)")?.done()?; + kite_sql.run("insert into t1 values(2, 2)")?.done()?; // Filter { - let statement = fnck_sql.prepare("explain select * from t1 where b > ?1")?; + let statement = kite_sql.prepare("explain select * from t1 where b > ?1")?; - let mut iter = fnck_sql.execute(&statement, &[("?1", DataValue::Int32(0))])?; + let mut iter = kite_sql.execute(&statement, &[("?1", DataValue::Int32(0))])?; assert_eq!( iter.next().unwrap()?.values[0].utf8().unwrap(), @@ -594,11 +594,11 @@ pub(crate) mod test { } // Aggregate { - let statement = fnck_sql.prepare( + let statement = kite_sql.prepare( "explain select a + ?1, max(b + ?2) from t1 where b > ?3 group by a + ?4", )?; - let mut iter = fnck_sql.execute( + let mut iter = kite_sql.execute( &statement, &[ ("?1", DataValue::Int32(0)), @@ -616,9 +616,9 @@ pub(crate) mod test { ) } { - let statement = fnck_sql.prepare("explain select *, ?1 from (select * from t1 where b > ?2) left join (select * from t1 where a > ?3) on a > ?4")?; + let statement = kite_sql.prepare("explain select *, ?1 from (select * from t1 where b > ?2) left join (select * from t1 where a > ?3) on a > ?4")?; - let mut iter = fnck_sql.execute( + let mut iter = kite_sql.execute( &statement, &[ ("?1", DataValue::Int32(9)), @@ -646,14 +646,14 @@ pub(crate) mod test { #[test] fn test_transaction_sql() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + kite_sql .run("create table t1 (a int primary key, b int)")? .done()?; - let mut tx_1 = fnck_sql.new_transaction()?; - let mut tx_2 = fnck_sql.new_transaction()?; + let mut tx_1 = kite_sql.new_transaction()?; + let mut tx_2 = kite_sql.new_transaction()?; tx_1.run("insert into t1 values(0, 0)")?.done()?; tx_1.run("insert into t1 values(1, 1)")?.done()?; @@ -688,7 +688,7 @@ pub(crate) mod test { assert!(tx_2.commit().is_err()); - let mut tx_3 = fnck_sql.new_transaction()?; + let mut tx_3 = kite_sql.new_transaction()?; let res = tx_3.run("create table t2 (a int primary key, b int)"); assert!(res.is_err()); diff --git a/src/execution/dml/analyze.rs b/src/execution/dml/analyze.rs index c9d66a72..69be1397 100644 --- a/src/execution/dml/analyze.rs +++ b/src/execution/dml/analyze.rs @@ -24,7 +24,7 @@ use std::sync::Arc; use std::{fmt, fs}; const DEFAULT_NUM_OF_BUCKETS: usize = 100; -const DEFAULT_STATISTICS_META_PATH: &str = "fnck_sql_statistics_metas"; +const DEFAULT_STATISTICS_META_PATH: &str = "kite_sql_statistics_metas"; pub struct Analyze { table_name: TableName, @@ -180,20 +180,20 @@ mod test { fn test_statistics_meta() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + kite_sql .run("create table t1 (a int primary key, b int)")? .done()?; - fnck_sql.run("create index b_index on t1 (b)")?.done()?; - fnck_sql.run("create index p_index on t1 (a, b)")?.done()?; + kite_sql.run("create index b_index on t1 (b)")?.done()?; + kite_sql.run("create index p_index on t1 (a, b)")?.done()?; for i in 0..DEFAULT_NUM_OF_BUCKETS + 1 { - fnck_sql + kite_sql .run(format!("insert into t1 values({i}, {})", i % 20))? .done()?; } - fnck_sql.run("analyze table t1")?.done()?; + kite_sql.run("analyze table t1")?.done()?; let dir_path = dirs::home_dir() .expect("Your system does not have a Config directory!") @@ -227,20 +227,20 @@ mod test { fn test_clean_expired_index() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + kite_sql .run("create table t1 (a int primary key, b int)")? .done()?; - fnck_sql.run("create index b_index on t1 (b)")?.done()?; - fnck_sql.run("create index p_index on t1 (a, b)")?.done()?; + kite_sql.run("create index b_index on t1 (b)")?.done()?; + kite_sql.run("create index p_index on t1 (a, b)")?.done()?; for i in 0..DEFAULT_NUM_OF_BUCKETS + 1 { - fnck_sql + kite_sql .run(format!("insert into t1 values({i}, {i})"))? .done()?; } - fnck_sql.run("analyze table t1")?.done()?; + kite_sql.run("analyze table t1")?.done()?; let dir_path = dirs::home_dir() .expect("Your system does not have a Config directory!") @@ -259,8 +259,8 @@ mod test { assert_eq!(file_names[1], OsStr::new("1")); assert_eq!(file_names[2], OsStr::new("2")); - fnck_sql.run("alter table t1 drop column b")?.done()?; - fnck_sql.run("analyze table t1")?.done()?; + kite_sql.run("alter table t1 drop column b")?.done()?; + kite_sql.run("analyze table t1")?.done()?; let mut entries = fs::read_dir(&dir_path)?; diff --git a/src/execution/dml/copy_to_file.rs b/src/execution/dml/copy_to_file.rs index c72d28c2..d1c94e2b 100644 --- a/src/execution/dml/copy_to_file.rs +++ b/src/execution/dml/copy_to_file.rs @@ -174,7 +174,7 @@ mod tests { .done()?; db.run("insert into t1 values (1, 1.1, 'foo')")?.done()?; db.run("insert into t1 values (2, 2.0, 'fooo')")?.done()?; - db.run("insert into t1 values (3, 2.1, 'fnck')")?.done()?; + db.run("insert into t1 values (3, 2.1, 'Kite')")?.done()?; let storage = db.storage; let mut transaction = storage.transaction()?; @@ -212,7 +212,7 @@ mod tests { assert_eq!(record2, vec!["2", "2.0", "fooo"]); let record3 = records.next().unwrap()?; - assert_eq!(record3, vec!["3", "2.1", "fnck"]); + assert_eq!(record3, vec!["3", "2.1", "Kite"]); assert!(records.next().is_none()); diff --git a/src/expression/agg.rs b/src/expression/agg.rs index 61f28cbd..cf7b4744 100644 --- a/src/expression/agg.rs +++ b/src/expression/agg.rs @@ -1,4 +1,4 @@ -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; #[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, ReferenceSerialization)] pub enum AggKind { diff --git a/src/expression/function/scala.rs b/src/expression/function/scala.rs index f351ad24..cbc0f744 100644 --- a/src/expression/function/scala.rs +++ b/src/expression/function/scala.rs @@ -5,7 +5,7 @@ use crate::expression::ScalarExpression; use crate::types::tuple::Tuple; use crate::types::value::DataValue; use crate::types::LogicalType; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use serde::{Deserialize, Serialize}; use std::fmt::Debug; use std::hash::{Hash, Hasher}; diff --git a/src/expression/function/table.rs b/src/expression/function/table.rs index 60abf742..54627d07 100644 --- a/src/expression/function/table.rs +++ b/src/expression/function/table.rs @@ -3,7 +3,7 @@ use crate::errors::DatabaseError; use crate::expression::function::FunctionSummary; use crate::expression::ScalarExpression; use crate::types::tuple::{SchemaRef, Tuple}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use serde::{Deserialize, Serialize}; use std::fmt::Debug; use std::hash::{Hash, Hasher}; diff --git a/src/expression/mod.rs b/src/expression/mod.rs index 3e30b2a5..89875aeb 100644 --- a/src/expression/mod.rs +++ b/src/expression/mod.rs @@ -6,8 +6,8 @@ use crate::expression::function::table::TableFunction; use crate::types::evaluator::{BinaryEvaluatorBox, EvaluatorFactory, UnaryEvaluatorBox}; use crate::types::value::DataValue; use crate::types::LogicalType; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use sqlparser::ast::TrimWhereField; use sqlparser::ast::{ BinaryOperator as SqlBinaryOperator, CharLengthUnits, UnaryOperator as SqlUnaryOperator, diff --git a/src/expression/range_detacher.rs b/src/expression/range_detacher.rs index 1590be82..29bb0a74 100644 --- a/src/expression/range_detacher.rs +++ b/src/expression/range_detacher.rs @@ -2,8 +2,8 @@ use crate::catalog::ColumnRef; use crate::expression::{BinaryOperator, ScalarExpression}; use crate::types::value::{DataValue, NULL_VALUE}; use crate::types::ColumnId; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::cmp::Ordering; use std::collections::Bound; use std::fmt::Formatter; diff --git a/src/lib.rs b/src/lib.rs index c6f47c07..cc4a28f6 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,11 +1,11 @@ -//! FnckSQL is a high-performance SQL database +//! KiteSQL is a high-performance SQL database //! that can be embedded in Rust code (based on RocksDB by default), //! making it possible to call SQL just like calling a function. //! It supports most of the syntax of SQL 2016. //! -//! FnckSQL provides thread-safe API: [`DataBase::run`](db::Database::run) for running SQL +//! KiteSQL provides thread-safe API: [`DataBase::run`](db::Database::run) for running SQL //! -//! FnckSQL uses [`DataBaseBuilder`](db::DataBaseBuilder) for instance construction, +//! KiteSQL uses [`DataBaseBuilder`](db::DataBaseBuilder) for instance construction, //! configuration in builder mode //! //! Support type @@ -37,10 +37,10 @@ //! # Examples //! //! ```ignore -//! use fnck_sql::db::{DataBaseBuilder, ResultIter}; -//! use fnck_sql::errors::DatabaseError; -//! use fnck_sql::implement_from_tuple; -//! use fnck_sql::types::value::DataValue; +//! use kite_sql::db::{DataBaseBuilder, ResultIter}; +//! use kite_sql::errors::DatabaseError; +//! use kite_sql::implement_from_tuple; +//! use kite_sql::types::value::DataValue; //! //! #[derive(Default, Debug, PartialEq)] //! struct MyStruct { diff --git a/src/macros/mod.rs b/src/macros/mod.rs index c3abfc50..66cdb4df 100644 --- a/src/macros/mod.rs +++ b/src/macros/mod.rs @@ -24,16 +24,16 @@ #[macro_export] macro_rules! implement_from_tuple { ($struct_name:ident, ($($field_name:ident : $field_type:ty => $closure:expr),+)) => { - impl From<(&::fnck_sql::types::tuple::SchemaRef, ::fnck_sql::types::tuple::Tuple)> for $struct_name { - fn from((schema, mut tuple): (&::fnck_sql::types::tuple::SchemaRef, ::fnck_sql::types::tuple::Tuple)) -> Self { - fn try_get(tuple: &mut ::fnck_sql::types::tuple::Tuple, schema: &::fnck_sql::types::tuple::SchemaRef, field_name: &str) -> Option<::fnck_sql::types::value::DataValue> { - let ty = ::fnck_sql::types::LogicalType::type_trans::()?; + impl From<(&::kite_sql::types::tuple::SchemaRef, ::kite_sql::types::tuple::Tuple)> for $struct_name { + fn from((schema, mut tuple): (&::kite_sql::types::tuple::SchemaRef, ::kite_sql::types::tuple::Tuple)) -> Self { + fn try_get(tuple: &mut ::kite_sql::types::tuple::Tuple, schema: &::kite_sql::types::tuple::SchemaRef, field_name: &str) -> Option<::kite_sql::types::value::DataValue> { + let ty = ::kite_sql::types::LogicalType::type_trans::()?; let (idx, _) = schema .iter() .enumerate() .find(|(_, col)| col.name() == field_name)?; - std::mem::replace(&mut tuple.values[idx], ::fnck_sql::types::value::DataValue::Null).cast(&ty).ok() + std::mem::replace(&mut tuple.values[idx], ::kite_sql::types::value::DataValue::Null).cast(&ty).ok() } let mut struct_instance = $struct_name::default(); @@ -58,7 +58,7 @@ macro_rules! implement_from_tuple { /// DataValue::binary_op(&v1, &v2, &BinaryOperator::Plus) /// }); /// -/// let fnck_sql = DataBaseBuilder::path("./example") +/// let kite_sql = DataBaseBuilder::path("./example") /// .register_scala_function(TestFunction::new()) /// .build() /// ?; @@ -68,7 +68,7 @@ macro_rules! scala_function { ($struct_name:ident::$function_name:ident($($arg_ty:expr),*) -> $return_ty:expr => $closure:expr) => { #[derive(Debug, ::serde::Serialize, ::serde::Deserialize)] pub(crate) struct $struct_name { - summary: ::fnck_sql::expression::function::FunctionSummary + summary: ::kite_sql::expression::function::FunctionSummary } impl $struct_name { @@ -82,7 +82,7 @@ macro_rules! scala_function { })* Arc::new(Self { - summary: ::fnck_sql::expression::function::FunctionSummary { + summary: ::kite_sql::expression::function::FunctionSummary { name: function_name, arg_types } @@ -91,9 +91,9 @@ macro_rules! scala_function { } #[typetag::serde] - impl ::fnck_sql::expression::function::scala::ScalarFunctionImpl for $struct_name { + impl ::kite_sql::expression::function::scala::ScalarFunctionImpl for $struct_name { #[allow(unused_variables, clippy::redundant_closure_call)] - fn eval(&self, args: &[::fnck_sql::expression::ScalarExpression], tuple: Option<(&::fnck_sql::types::tuple::Tuple, &[::fnck_sql::catalog::column::ColumnRef])>) -> Result<::fnck_sql::types::value::DataValue, ::fnck_sql::errors::DatabaseError> { + fn eval(&self, args: &[::kite_sql::expression::ScalarExpression], tuple: Option<(&::kite_sql::types::tuple::Tuple, &[::kite_sql::catalog::column::ColumnRef])>) -> Result<::kite_sql::types::value::DataValue, ::kite_sql::errors::DatabaseError> { let mut _index = 0; $closure($({ @@ -107,15 +107,15 @@ macro_rules! scala_function { }, )*) } - fn monotonicity(&self) -> Option<::fnck_sql::expression::function::scala::FuncMonotonicity> { + fn monotonicity(&self) -> Option<::kite_sql::expression::function::scala::FuncMonotonicity> { todo!() } - fn return_type(&self) -> &::fnck_sql::types::LogicalType { + fn return_type(&self) -> &::kite_sql::types::LogicalType { &$return_ty } - fn summary(&self) -> &::fnck_sql::expression::function::FunctionSummary { + fn summary(&self) -> &::kite_sql::expression::function::FunctionSummary { &self.summary } } @@ -136,7 +136,7 @@ macro_rules! scala_function { /// ])))) as Box>>) /// })); /// -/// let fnck_sql = DataBaseBuilder::path("./example") +/// let kite_sql = DataBaseBuilder::path("./example") /// .register_table_function(MyTableFunction::new()) /// .build() /// ?; @@ -144,18 +144,18 @@ macro_rules! scala_function { #[macro_export] macro_rules! table_function { ($struct_name:ident::$function_name:ident($($arg_ty:expr),*) -> [$($output_name:ident: $output_ty:expr),*] => $closure:expr) => { - static $function_name: ::std::sync::LazyLock<::fnck_sql::catalog::table::TableCatalog> = ::std::sync::LazyLock::new(|| { + static $function_name: ::std::sync::LazyLock<::kite_sql::catalog::table::TableCatalog> = ::std::sync::LazyLock::new(|| { let mut columns = Vec::new(); $({ - columns.push(::fnck_sql::catalog::column::ColumnCatalog::new(stringify!($output_name).to_lowercase(), true, ::fnck_sql::catalog::column::ColumnDesc::new($output_ty, None, false, None).unwrap())); + columns.push(::kite_sql::catalog::column::ColumnCatalog::new(stringify!($output_name).to_lowercase(), true, ::kite_sql::catalog::column::ColumnDesc::new($output_ty, None, false, None).unwrap())); })* - ::fnck_sql::catalog::table::TableCatalog::new(Arc::new(stringify!($function_name).to_lowercase()), columns).unwrap() + ::kite_sql::catalog::table::TableCatalog::new(Arc::new(stringify!($function_name).to_lowercase()), columns).unwrap() }); #[derive(Debug, ::serde::Serialize, ::serde::Deserialize)] pub(crate) struct $struct_name { - summary: ::fnck_sql::expression::function::FunctionSummary + summary: ::kite_sql::expression::function::FunctionSummary } impl $struct_name { @@ -169,7 +169,7 @@ macro_rules! table_function { })* Arc::new(Self { - summary: ::fnck_sql::expression::function::FunctionSummary { + summary: ::kite_sql::expression::function::FunctionSummary { name: function_name, arg_types } @@ -178,9 +178,9 @@ macro_rules! table_function { } #[typetag::serde] - impl ::fnck_sql::expression::function::table::TableFunctionImpl for $struct_name { + impl ::kite_sql::expression::function::table::TableFunctionImpl for $struct_name { #[allow(unused_variables, clippy::redundant_closure_call)] - fn eval(&self, args: &[::fnck_sql::expression::ScalarExpression]) -> Result>>, ::fnck_sql::errors::DatabaseError> { + fn eval(&self, args: &[::kite_sql::expression::ScalarExpression]) -> Result>>, ::kite_sql::errors::DatabaseError> { let mut _index = 0; $closure($({ @@ -194,15 +194,15 @@ macro_rules! table_function { }, )*) } - fn output_schema(&self) -> &::fnck_sql::types::tuple::SchemaRef { + fn output_schema(&self) -> &::kite_sql::types::tuple::SchemaRef { $function_name.schema_ref() } - fn summary(&self) -> &::fnck_sql::expression::function::FunctionSummary { + fn summary(&self) -> &::kite_sql::expression::function::FunctionSummary { &self.summary } - fn table(&self) -> &'static ::fnck_sql::catalog::table::TableCatalog { + fn table(&self) -> &'static ::kite_sql::catalog::table::TableCatalog { &$function_name } } diff --git a/src/optimizer/core/histogram.rs b/src/optimizer/core/histogram.rs index 37c03395..295eb7ed 100644 --- a/src/optimizer/core/histogram.rs +++ b/src/optimizer/core/histogram.rs @@ -9,7 +9,7 @@ use crate::types::index::{IndexId, IndexMeta}; use crate::types::value::DataValue; use crate::types::LogicalType; use bumpalo::Bump; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use ordered_float::OrderedFloat; use std::collections::Bound; use std::{cmp, mem}; diff --git a/src/optimizer/core/statistics_meta.rs b/src/optimizer/core/statistics_meta.rs index 37a03194..0a89ecdf 100644 --- a/src/optimizer/core/statistics_meta.rs +++ b/src/optimizer/core/statistics_meta.rs @@ -7,7 +7,7 @@ use crate::serdes::{ReferenceSerialization, ReferenceTables}; use crate::storage::{StatisticsMetaCache, Transaction}; use crate::types::index::IndexId; use crate::types::value::DataValue; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fs::OpenOptions; use std::io::Write; use std::path::Path; diff --git a/src/planner/mod.rs b/src/planner/mod.rs index aa81125e..accec76e 100644 --- a/src/planner/mod.rs +++ b/src/planner/mod.rs @@ -6,8 +6,8 @@ use crate::planner::operator::union::UnionOperator; use crate::planner::operator::values::ValuesOperator; use crate::planner::operator::{Operator, PhysicalOption}; use crate::types::tuple::{Schema, SchemaRef}; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::sync::Arc; #[derive(Debug, Clone)] diff --git a/src/planner/operator/aggregate.rs b/src/planner/operator/aggregate.rs index 185868e0..f74b7182 100644 --- a/src/planner/operator/aggregate.rs +++ b/src/planner/operator/aggregate.rs @@ -1,7 +1,7 @@ use crate::planner::{Childrens, LogicalPlan}; use crate::{expression::ScalarExpression, planner::operator::Operator}; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/alter_table/add_column.rs b/src/planner/operator/alter_table/add_column.rs index 4b5036df..a03608f6 100644 --- a/src/planner/operator/alter_table/add_column.rs +++ b/src/planner/operator/alter_table/add_column.rs @@ -1,5 +1,5 @@ use crate::catalog::{ColumnCatalog, TableName}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/alter_table/drop_column.rs b/src/planner/operator/alter_table/drop_column.rs index 8d4e5c17..a731a54f 100644 --- a/src/planner/operator/alter_table/drop_column.rs +++ b/src/planner/operator/alter_table/drop_column.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/analyze.rs b/src/planner/operator/analyze.rs index 0020141b..cc37d4d4 100644 --- a/src/planner/operator/analyze.rs +++ b/src/planner/operator/analyze.rs @@ -1,6 +1,6 @@ use crate::catalog::TableName; use crate::types::index::IndexMetaRef; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; #[derive(Debug, PartialEq, Eq, Clone, Hash, ReferenceSerialization)] pub struct AnalyzeOperator { diff --git a/src/planner/operator/copy_from_file.rs b/src/planner/operator/copy_from_file.rs index 20d65421..3888d8b7 100644 --- a/src/planner/operator/copy_from_file.rs +++ b/src/planner/operator/copy_from_file.rs @@ -1,8 +1,8 @@ use crate::binder::copy::ExtSource; use crate::catalog::TableName; use crate::types::tuple::SchemaRef; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/copy_to_file.rs b/src/planner/operator/copy_to_file.rs index 30a8c2b8..3305318b 100644 --- a/src/planner/operator/copy_to_file.rs +++ b/src/planner/operator/copy_to_file.rs @@ -1,7 +1,7 @@ use crate::binder::copy::ExtSource; use crate::types::tuple::SchemaRef; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/create_index.rs b/src/planner/operator/create_index.rs index 3f9e7bfd..bc95570c 100644 --- a/src/planner/operator/create_index.rs +++ b/src/planner/operator/create_index.rs @@ -1,7 +1,7 @@ use crate::catalog::{ColumnRef, TableName}; use crate::types::index::IndexType; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/create_table.rs b/src/planner/operator/create_table.rs index 12535406..8e5a9f13 100644 --- a/src/planner/operator/create_table.rs +++ b/src/planner/operator/create_table.rs @@ -1,6 +1,6 @@ use crate::catalog::{ColumnCatalog, TableName}; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/create_view.rs b/src/planner/operator/create_view.rs index 9305bf23..896f6866 100644 --- a/src/planner/operator/create_view.rs +++ b/src/planner/operator/create_view.rs @@ -1,5 +1,5 @@ use crate::catalog::view::View; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/delete.rs b/src/planner/operator/delete.rs index cab2ae16..49fda089 100644 --- a/src/planner/operator/delete.rs +++ b/src/planner/operator/delete.rs @@ -1,5 +1,5 @@ use crate::catalog::{ColumnRef, TableName}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/describe.rs b/src/planner/operator/describe.rs index f2f4d0be..1e0a1826 100644 --- a/src/planner/operator/describe.rs +++ b/src/planner/operator/describe.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/drop_table.rs b/src/planner/operator/drop_table.rs index de054ff0..43cbab89 100644 --- a/src/planner/operator/drop_table.rs +++ b/src/planner/operator/drop_table.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/drop_view.rs b/src/planner/operator/drop_view.rs index ee6d0d15..b14b2aa8 100644 --- a/src/planner/operator/drop_view.rs +++ b/src/planner/operator/drop_view.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/filter.rs b/src/planner/operator/filter.rs index c8a9fd2f..54c5a039 100644 --- a/src/planner/operator/filter.rs +++ b/src/planner/operator/filter.rs @@ -1,6 +1,6 @@ use crate::expression::ScalarExpression; use crate::planner::{Childrens, LogicalPlan}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/function_scan.rs b/src/planner/operator/function_scan.rs index d6e2eace..693727e7 100644 --- a/src/planner/operator/function_scan.rs +++ b/src/planner/operator/function_scan.rs @@ -1,7 +1,7 @@ use crate::expression::function::table::TableFunction; use crate::planner::operator::Operator; use crate::planner::{Childrens, LogicalPlan}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/insert.rs b/src/planner/operator/insert.rs index a27e3d48..853b536f 100644 --- a/src/planner/operator/insert.rs +++ b/src/planner/operator/insert.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/join.rs b/src/planner/operator/join.rs index ff5f2d34..f352ead2 100644 --- a/src/planner/operator/join.rs +++ b/src/planner/operator/join.rs @@ -1,8 +1,8 @@ use super::Operator; use crate::expression::ScalarExpression; use crate::planner::{Childrens, LogicalPlan}; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/limit.rs b/src/planner/operator/limit.rs index 2865d611..299c8565 100644 --- a/src/planner/operator/limit.rs +++ b/src/planner/operator/limit.rs @@ -1,6 +1,6 @@ use super::Operator; use crate::planner::{Childrens, LogicalPlan}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/mod.rs b/src/planner/operator/mod.rs index e30a7744..49fb2573 100644 --- a/src/planner/operator/mod.rs +++ b/src/planner/operator/mod.rs @@ -49,8 +49,8 @@ use crate::planner::operator::union::UnionOperator; use crate::planner::operator::update::UpdateOperator; use crate::planner::operator::values::ValuesOperator; use crate::types::index::IndexInfo; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/project.rs b/src/planner/operator/project.rs index 95d244b9..2166b5a0 100644 --- a/src/planner/operator/project.rs +++ b/src/planner/operator/project.rs @@ -1,6 +1,6 @@ use crate::expression::ScalarExpression; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/sort.rs b/src/planner/operator/sort.rs index 7080353c..13f22c1e 100644 --- a/src/planner/operator/sort.rs +++ b/src/planner/operator/sort.rs @@ -1,6 +1,6 @@ use crate::expression::ScalarExpression; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/table_scan.rs b/src/planner/operator/table_scan.rs index 1e9d01a1..7ab1c131 100644 --- a/src/planner/operator/table_scan.rs +++ b/src/planner/operator/table_scan.rs @@ -4,8 +4,8 @@ use crate::planner::{Childrens, LogicalPlan}; use crate::storage::Bounds; use crate::types::index::IndexInfo; use crate::types::ColumnId; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/truncate.rs b/src/planner/operator/truncate.rs index b67646f2..bc2f3370 100644 --- a/src/planner/operator/truncate.rs +++ b/src/planner/operator/truncate.rs @@ -1,5 +1,5 @@ use crate::catalog::TableName; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/union.rs b/src/planner/operator/union.rs index d4e9e206..67068053 100644 --- a/src/planner/operator/union.rs +++ b/src/planner/operator/union.rs @@ -1,8 +1,8 @@ use crate::planner::operator::Operator; use crate::planner::{Childrens, LogicalPlan}; use crate::types::tuple::SchemaRef; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/update.rs b/src/planner/operator/update.rs index 89a4d817..775273a0 100644 --- a/src/planner/operator/update.rs +++ b/src/planner/operator/update.rs @@ -1,7 +1,7 @@ use crate::catalog::{ColumnRef, TableName}; use crate::expression::ScalarExpression; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/planner/operator/values.rs b/src/planner/operator/values.rs index ddac52ad..55fafd4b 100644 --- a/src/planner/operator/values.rs +++ b/src/planner/operator/values.rs @@ -1,7 +1,7 @@ use crate::types::tuple::SchemaRef; use crate::types::value::DataValue; -use fnck_sql_serde_macros::ReferenceSerialization; use itertools::Itertools; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; diff --git a/src/storage/rocksdb.rs b/src/storage/rocksdb.rs index 3e8a4f12..21abdbcf 100644 --- a/src/storage/rocksdb.rs +++ b/src/storage/rocksdb.rs @@ -249,19 +249,19 @@ mod test { #[test] fn test_index_iter_pk() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + kite_sql .run("create table t1 (a int primary key)")? .done()?; - fnck_sql + kite_sql .run("insert into t1 (a) values (0), (1), (2), (3), (4)")? .done()?; - let transaction = fnck_sql.storage.transaction()?; + let transaction = kite_sql.storage.transaction()?; let table_name = Arc::new("t1".to_string()); let table = transaction - .table(fnck_sql.state.table_cache(), table_name.clone())? + .table(kite_sql.state.table_cache(), table_name.clone())? .unwrap() .clone(); let a_column_id = table.get_column_id_by_name("a").unwrap(); @@ -317,23 +317,23 @@ mod test { #[test] fn test_read_by_index() -> Result<(), DatabaseError> { let temp_dir = TempDir::new().expect("unable to create temporary working directory"); - let fnck_sql = DataBaseBuilder::path(temp_dir.path()).build()?; - fnck_sql + let kite_sql = DataBaseBuilder::path(temp_dir.path()).build()?; + kite_sql .run("create table t1 (a int primary key, b int unique)")? .done()?; - fnck_sql + kite_sql .run("insert into t1 (a, b) values (0, 0), (1, 1), (2, 2)")? .done()?; - let transaction = fnck_sql.storage.transaction().unwrap(); + let transaction = kite_sql.storage.transaction().unwrap(); let table = transaction - .table(fnck_sql.state.table_cache(), Arc::new("t1".to_string()))? + .table(kite_sql.state.table_cache(), Arc::new("t1".to_string()))? .unwrap() .clone(); let columns = table.columns().cloned().enumerate().collect_vec(); let mut iter = transaction .read_by_index( - fnck_sql.state.table_cache(), + kite_sql.state.table_cache(), Arc::new("t1".to_string()), (Some(0), Some(1)), columns, diff --git a/src/types/index.rs b/src/types/index.rs index 18dee32a..df57e070 100644 --- a/src/types/index.rs +++ b/src/types/index.rs @@ -4,7 +4,7 @@ use crate::expression::range_detacher::Range; use crate::expression::ScalarExpression; use crate::types::value::DataValue; use crate::types::{ColumnId, LogicalType}; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use std::fmt; use std::fmt::Formatter; use std::sync::Arc; diff --git a/src/types/mod.rs b/src/types/mod.rs index d23630d8..3411e44e 100644 --- a/src/types/mod.rs +++ b/src/types/mod.rs @@ -11,7 +11,7 @@ use std::any::TypeId; use std::cmp; use crate::errors::DatabaseError; -use fnck_sql_serde_macros::ReferenceSerialization; +use kite_sql_serde_macros::ReferenceSerialization; use sqlparser::ast::{CharLengthUnits, ExactNumberInfo, TimezoneInfo}; use ulid::Ulid; diff --git a/static/images/kite_sql_dark.png b/static/images/kite_sql_dark.png new file mode 100644 index 00000000..238953a5 Binary files /dev/null and b/static/images/kite_sql_dark.png differ diff --git a/static/images/kite_sql_light.png b/static/images/kite_sql_light.png new file mode 100644 index 00000000..a1047b67 Binary files /dev/null and b/static/images/kite_sql_light.png differ diff --git a/static/images/pg.gif b/static/images/pg.gif deleted file mode 100644 index 0a40b059..00000000 Binary files a/static/images/pg.gif and /dev/null differ diff --git a/static/images/start.gif b/static/images/start.gif deleted file mode 100644 index 3f99cd37..00000000 Binary files a/static/images/start.gif and /dev/null differ diff --git a/tests/macros-test/Cargo.toml b/tests/macros-test/Cargo.toml index 74a3173d..b18b88e2 100644 --- a/tests/macros-test/Cargo.toml +++ b/tests/macros-test/Cargo.toml @@ -4,7 +4,7 @@ version = "0.4.0" edition = "2021" [dev-dependencies] -"fnck_sql" = { path = "../.." } +"kite_sql" = { path = "../.." } lazy_static = { version = "1" } serde = { version = "1", features = ["derive", "rc"] } sqlparser = { version = "0.34", features = ["serde"] } diff --git a/tests/macros-test/src/main.rs b/tests/macros-test/src/main.rs index be75734d..04b1319b 100644 --- a/tests/macros-test/src/main.rs +++ b/tests/macros-test/src/main.rs @@ -2,18 +2,18 @@ fn main() {} #[cfg(test)] mod test { - use fnck_sql::catalog::column::{ColumnCatalog, ColumnDesc, ColumnRef, ColumnRelation}; - use fnck_sql::errors::DatabaseError; - use fnck_sql::expression::function::scala::ScalarFunctionImpl; - use fnck_sql::expression::function::table::TableFunctionImpl; - use fnck_sql::expression::function::FunctionSummary; - use fnck_sql::expression::BinaryOperator; - use fnck_sql::expression::ScalarExpression; - use fnck_sql::types::evaluator::EvaluatorFactory; - use fnck_sql::types::tuple::{SchemaRef, Tuple}; - use fnck_sql::types::value::{DataValue, Utf8Type}; - use fnck_sql::types::LogicalType; - use fnck_sql::{implement_from_tuple, scala_function, table_function}; + use kite_sql::catalog::column::{ColumnCatalog, ColumnDesc, ColumnRef, ColumnRelation}; + use kite_sql::errors::DatabaseError; + use kite_sql::expression::function::scala::ScalarFunctionImpl; + use kite_sql::expression::function::table::TableFunctionImpl; + use kite_sql::expression::function::FunctionSummary; + use kite_sql::expression::BinaryOperator; + use kite_sql::expression::ScalarExpression; + use kite_sql::types::evaluator::EvaluatorFactory; + use kite_sql::types::tuple::{SchemaRef, Tuple}; + use kite_sql::types::value::{DataValue, Utf8Type}; + use kite_sql::types::LogicalType; + use kite_sql::{implement_from_tuple, scala_function, table_function}; use sqlparser::ast::CharLengthUnits; use std::sync::Arc; diff --git a/tests/slt/basic_test.slt b/tests/slt/basic_test.slt index 30c7966d..bdda04a4 100644 --- a/tests/slt/basic_test.slt +++ b/tests/slt/basic_test.slt @@ -104,7 +104,7 @@ select CAST(id AS VARCHAR) from t statement ok create table t1 (id int primary key, name VARCHAR NOT NULL) -# issue: https://github.com/KipData/FnckSQL/issues/175 +# issue: https://github.com/KipData/KiteSQL/issues/175 statement error select t.name from t1; diff --git a/tests/slt/char.slt b/tests/slt/char.slt index 16a98891..e054634e 100644 --- a/tests/slt/char.slt +++ b/tests/slt/char.slt @@ -2,42 +2,42 @@ statement ok create table t1(id int primary key, v1 char, v2 char(5 characters), v3 char(5 octets)) statement ok -insert into t1 values(0, '🖕', '🖕🖕🖕🖕🖕', '🖕'); +insert into t1 values(0, '🪁', '🪁🪁🪁🪁🪁', '🪁'); statement ok insert into t1 values(1, null, null, null); statement error -insert into t1 values(1, '🖕', '🖕🖕🖕🖕🖕🖕', '🖕'); +insert into t1 values(1, '🪁', '🪁🪁🪁🪁🪁🪁', '🪁'); statement error -insert into t1 values(1, '🖕', '🖕🖕🖕🖕🖕', '🖕🖕'); +insert into t1 values(1, '🪁', '🪁🪁🪁🪁🪁', '🪁🪁'); query ITT select * from t1; ---- -0 🖕 🖕🖕🖕🖕🖕 🖕 +0 🪁 🪁🪁🪁🪁🪁 🪁 1 null null null statement ok create table t2(id int primary key, v1 varchar, v2 varchar(5 characters), v3 varchar(5 octets)) statement ok -insert into t2 values(0, '🖕', '🖕🖕🖕🖕🖕', '🖕'); +insert into t2 values(0, '🪁', '🪁🪁🪁🪁🪁', '🪁'); statement ok insert into t2 values(1, null, null, null); statement error -insert into t2 values(1, '🖕', '🖕🖕🖕🖕🖕🖕', '🖕'); +insert into t2 values(1, '🪁', '🪁🪁🪁🪁🪁🪁', '🪁'); statement error -insert into t2 values(1, '🖕', '🖕🖕🖕🖕🖕', '🖕🖕'); +insert into t2 values(1, '🪁', '🪁🪁🪁🪁🪁', '🪁🪁'); query ITT select * from t2; ---- -0 🖕 🖕🖕🖕🖕🖕 🖕 +0 🪁 🪁🪁🪁🪁🪁 🪁 1 null null null statement ok diff --git a/tests/slt/subquery.slt b/tests/slt/subquery.slt index 5e7ae7d6..e5d4fb81 100644 --- a/tests/slt/subquery.slt +++ b/tests/slt/subquery.slt @@ -72,7 +72,7 @@ select * from t1 where a not in (select 1) and b = 3 statement ok drop table t1; -# https://github.com/KipData/FnckSQL/issues/169 +# https://github.com/KipData/KiteSQL/issues/169 statement ok create table t2(id int primary key, a int not null, b int not null); diff --git a/tests/slt/substring.slt b/tests/slt/substring.slt index 58561419..d62ad552 100644 --- a/tests/slt/substring.slt +++ b/tests/slt/substring.slt @@ -38,7 +38,7 @@ select substring(null from 1 for 4 ) ---- null -# issue: https://github.com/KipData/FnckSQL/issues/160 +# issue: https://github.com/KipData/KiteSQL/issues/160 query T select substring('abc', 1, 10); ---- diff --git a/tests/sqllogictest/Cargo.toml b/tests/sqllogictest/Cargo.toml index 0c21bcc3..ec451fc0 100644 --- a/tests/sqllogictest/Cargo.toml +++ b/tests/sqllogictest/Cargo.toml @@ -5,7 +5,7 @@ edition = "2021" [dependencies] clap = { version = "4" } -"fnck_sql" = { path = "../.." } +"kite_sql" = { path = "../.." } glob = { version = "0.3" } sqllogictest = { version = "0.14" } tempfile = { version = "3.10" } \ No newline at end of file diff --git a/tests/sqllogictest/src/lib.rs b/tests/sqllogictest/src/lib.rs index 10591b2d..6ab7d78b 100644 --- a/tests/sqllogictest/src/lib.rs +++ b/tests/sqllogictest/src/lib.rs @@ -1,6 +1,6 @@ -use fnck_sql::db::{Database, ResultIter}; -use fnck_sql::errors::DatabaseError; -use fnck_sql::storage::rocksdb::RocksStorage; +use kite_sql::db::{Database, ResultIter}; +use kite_sql::errors::DatabaseError; +use kite_sql::storage::rocksdb::RocksStorage; use sqllogictest::{DBOutput, DefaultColumnType, DB}; use std::time::Instant; diff --git a/tests/sqllogictest/src/main.rs b/tests/sqllogictest/src/main.rs index 419d0cd9..129ed284 100644 --- a/tests/sqllogictest/src/main.rs +++ b/tests/sqllogictest/src/main.rs @@ -1,5 +1,5 @@ use clap::Parser; -use fnck_sql::db::DataBaseBuilder; +use kite_sql::db::DataBaseBuilder; use sqllogictest::Runner; use sqllogictest_test::SQLBase; use std::fs::File; @@ -22,7 +22,7 @@ fn main() { let path = Path::new(env!("CARGO_MANIFEST_DIR")).join("..").join(".."); std::env::set_current_dir(path).unwrap(); - println!("FnckSQL Test Start!\n"); + println!("KiteSQL Test Start!\n"); init_20000_row_csv().expect("failed to init csv"); let mut file_num = 0; let start = Instant::now(); diff --git a/tpcc/Cargo.toml b/tpcc/Cargo.toml index 9b32f95a..a980ec78 100644 --- a/tpcc/Cargo.toml +++ b/tpcc/Cargo.toml @@ -6,7 +6,7 @@ edition = "2021" [dependencies] clap = { version = "4", features = ["derive"] } chrono = { version = "0.4" } -fnck_sql = { version = "0.0.10", path = "..", package = "fnck_sql" } +kite_sql = { path = "..", package = "kite_sql" } indicatif = { version = "0.17" } ordered-float = { version = "4" } rand = { version = "0.8" } diff --git a/tpcc/README.md b/tpcc/README.md index 7dbb3c07..36cd971f 100644 --- a/tpcc/README.md +++ b/tpcc/README.md @@ -1,4 +1,4 @@ -# TPCC on FnckSQL +# TPCC on KiteSQL run `cargo run -p tpcc --release` to run tpcc - i9-13900HX diff --git a/tpcc/src/delivery.rs b/tpcc/src/delivery.rs index 4403e120..42eecc7e 100644 --- a/tpcc/src/delivery.rs +++ b/tpcc/src/delivery.rs @@ -1,9 +1,9 @@ use crate::load::DIST_PER_WARE; use crate::{TpccArgs, TpccError, TpccTest, TpccTransaction}; use chrono::Utc; -use fnck_sql::db::{DBTransaction, ResultIter, Statement}; -use fnck_sql::storage::Storage; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DBTransaction, ResultIter, Statement}; +use kite_sql::storage::Storage; +use kite_sql::types::value::DataValue; use rand::prelude::ThreadRng; use rand::Rng; diff --git a/tpcc/src/load.rs b/tpcc/src/load.rs index f3c837c3..8c0628e3 100644 --- a/tpcc/src/load.rs +++ b/tpcc/src/load.rs @@ -1,8 +1,8 @@ use crate::TpccError; use chrono::Utc; -use fnck_sql::db::{Database, ResultIter}; -use fnck_sql::storage::Storage; use indicatif::{ProgressBar, ProgressStyle}; +use kite_sql::db::{Database, ResultIter}; +use kite_sql::storage::Storage; use rand::rngs::ThreadRng; use rand::Rng; use rust_decimal::Decimal; diff --git a/tpcc/src/main.rs b/tpcc/src/main.rs index 5c3f3697..3c7fd232 100644 --- a/tpcc/src/main.rs +++ b/tpcc/src/main.rs @@ -7,9 +7,9 @@ use crate::rt_hist::RtHist; use crate::slev::SlevTest; use crate::utils::SeqGen; use clap::Parser; -use fnck_sql::db::{DBTransaction, DataBaseBuilder, Statement}; -use fnck_sql::errors::DatabaseError; -use fnck_sql::storage::Storage; +use kite_sql::db::{DBTransaction, DataBaseBuilder, Statement}; +use kite_sql::errors::DatabaseError; +use kite_sql::storage::Storage; use rand::prelude::ThreadRng; use rand::Rng; use std::time::{Duration, Instant}; @@ -64,7 +64,7 @@ struct TpccArgs { struct Args { #[clap(long, default_value = "false")] joins: bool, - #[clap(long, default_value = "fnck_sql_tpcc")] + #[clap(long, default_value = "kite_sql_tpcc")] path: String, #[clap(long, default_value = "5")] max_retry: usize, @@ -306,7 +306,7 @@ fn other_ware(rng: &mut ThreadRng, home_ware: usize, num_ware: usize) -> usize { #[derive(thiserror::Error, Debug)] pub enum TpccError { - #[error("fnck_sql: {0}")] + #[error("kite_sql: {0}")] Database( #[source] #[from] @@ -321,9 +321,9 @@ pub enum TpccError { #[ignore] #[test] fn explain_tpcc() -> Result<(), DatabaseError> { - use fnck_sql::types::tuple::create_table; + use kite_sql::types::tuple::create_table; - let database = DataBaseBuilder::path("./fnck_sql_tpcc").build()?; + let database = DataBaseBuilder::path("./kite_sql_tpcc").build()?; let mut tx = database.new_transaction()?; let customer_tuple = tx diff --git a/tpcc/src/new_ord.rs b/tpcc/src/new_ord.rs index e036a3c4..2281ca05 100644 --- a/tpcc/src/new_ord.rs +++ b/tpcc/src/new_ord.rs @@ -1,9 +1,9 @@ use crate::load::{nu_rand, CUST_PER_DIST, DIST_PER_WARE, MAX_ITEMS, MAX_NUM_ITEMS}; use crate::{other_ware, TpccArgs, TpccError, TpccTest, TpccTransaction, ALLOW_MULTI_WAREHOUSE_TX}; use chrono::Utc; -use fnck_sql::db::{DBTransaction, ResultIter, Statement}; -use fnck_sql::storage::Storage; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DBTransaction, ResultIter, Statement}; +use kite_sql::storage::Storage; +use kite_sql::types::value::DataValue; use rand::prelude::ThreadRng; use rand::Rng; use rust_decimal::Decimal; diff --git a/tpcc/src/order_stat.rs b/tpcc/src/order_stat.rs index a086790f..da2561a4 100644 --- a/tpcc/src/order_stat.rs +++ b/tpcc/src/order_stat.rs @@ -1,8 +1,8 @@ use crate::load::{last_name, nu_rand, CUST_PER_DIST, DIST_PER_WARE}; use crate::{TpccArgs, TpccError, TpccTest, TpccTransaction}; -use fnck_sql::db::{DBTransaction, Statement}; -use fnck_sql::storage::Storage; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DBTransaction, Statement}; +use kite_sql::storage::Storage; +use kite_sql::types::value::DataValue; use rand::prelude::ThreadRng; use rand::Rng; use rust_decimal::Decimal; diff --git a/tpcc/src/payment.rs b/tpcc/src/payment.rs index cdce47d5..37adce16 100644 --- a/tpcc/src/payment.rs +++ b/tpcc/src/payment.rs @@ -1,9 +1,9 @@ use crate::load::{last_name, nu_rand, CUST_PER_DIST, DIST_PER_WARE}; use crate::{other_ware, TpccArgs, TpccError, TpccTest, TpccTransaction, ALLOW_MULTI_WAREHOUSE_TX}; use chrono::Utc; -use fnck_sql::db::{DBTransaction, ResultIter, Statement}; -use fnck_sql::storage::Storage; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DBTransaction, ResultIter, Statement}; +use kite_sql::storage::Storage; +use kite_sql::types::value::DataValue; use rand::prelude::ThreadRng; use rand::Rng; use rust_decimal::Decimal; diff --git a/tpcc/src/slev.rs b/tpcc/src/slev.rs index 70e4e190..569a9d93 100644 --- a/tpcc/src/slev.rs +++ b/tpcc/src/slev.rs @@ -1,8 +1,8 @@ use crate::load::DIST_PER_WARE; use crate::{TpccArgs, TpccError, TpccTest, TpccTransaction}; -use fnck_sql::db::{DBTransaction, Statement}; -use fnck_sql::storage::Storage; -use fnck_sql::types::value::DataValue; +use kite_sql::db::{DBTransaction, Statement}; +use kite_sql::storage::Storage; +use kite_sql::types::value::DataValue; use rand::prelude::ThreadRng; use rand::Rng;