evenyag
23f235524d
feat: Implements validity() and null_count() for Vector ( #38 )
...
* feat: Add validity() to Vector
* test(datatypes): Add more tests and fix get_data() not returns None for null
2022-06-01 20:55:58 +08:00
Lei, Huang
fb0585229e
refactor: Entry should be a trait ( #37 )
2022-05-26 11:30:50 +08:00
dennis zhuang
a2331366f6
feat: adds adds register_udf api to query engine and refactor datatypes ( #34 )
...
* feat: adds ColumnarValue and refactor vectors
* fix: ConcreteDataType compile error
* feat:adds udf/function mods
* feat: adds test for common_query crate
* feat: adds register_udf api to query engine
* feat: adds common_query::error test
* refactor: by CR comments
* refactor: adds impl_new_concret_type_functions! macro to reduce boilerplate codes
* fix: typo
2022-05-24 16:50:56 +08:00
Lei, Huang
06b592f00f
feat: add WAL definitions ( #35 )
...
* feat: add WAL definitions
* rename and add some tests
2022-05-24 16:12:23 +08:00
evenyag
1594da337f
feat(store-api): Prototype of storage engine api ( #33 )
2022-05-20 18:51:51 +08:00
Lei, Huang
e75a54b766
feat: impl From arrow array for exsisting vectors ( #32 )
...
* feat: impl From arrow array for exsisting vectors
* fix: review comments
* feat: clippy forbid prints
2022-05-19 16:10:00 +08:00
dennis zhuang
b0d2e2e91b
feat: adds ConcretDataType and more datatypes impl ( #31 )
...
* feat: adds ConcretDataType and impl binary/boolean/null types and vectors
* feat: adds String to ConcretDataType
* docs: ConcretDataType::from_arrow_type may panic
2022-05-19 11:21:11 +08:00
evenyag
5777732fde
feat(store-api): Init store-api crate ( #30 )
2022-05-18 17:19:57 +08:00
Lei, Huang
519cbc832a
feat: add StringVector datatype ( #28 )
2022-05-18 14:49:36 +08:00
Lei, Huang
bd4fe1f5bc
feat: RecordBatch serialization ( #26 )
2022-05-17 17:01:00 +08:00
evenyag
3d374cce68
feat: implement log related macros ( #29 )
2022-05-17 16:00:17 +08:00
dennis zhuang
a819b6bce5
feat: impl object-store based on opendal ( #27 )
...
* feat: impl object-store based on opendal
* feat: adds s3 test
* feat: export Layer
* feat: pass s3 access key/secret by env vars
* fix: logging when s3 test is running
2022-05-17 15:58:27 +08:00
dennis zhuang
93cbdbee9a
feat: adds common-telemetry crate and adds logs/metrics to query engine ( #25 )
...
* feat: adds common-telemetry crate and logging mod
* refactor: common telemetry
* feat: adds metric mod and exports metrics by http
* feat: adds metrics to query engine and datanodes
* refactor: rename metrics
* refactor: rename ElapsedTimer struct and elapsed_timer macro
* refactor: log error when fail to new data node.
* fix: use backtrace crate instead of unstable feature
* feat: add must_use attr to Timer
* fix: only reserve Debug attribute for Timer
2022-05-12 17:42:48 +08:00
Lei, Huang
641f4b39bd
feat: add serialization support to existing data types ( #24 )
...
* feat: add serialization support to existing data types
* fix: refactor errors mod to error. fix other review comments
2022-05-11 17:17:27 +08:00
Lei, Huang
841744e4a3
fix: remove direct unwraps ( #23 )
2022-05-09 17:50:49 +08:00
Lei, Huang
5c72c5ae19
tests: add more unit tests for sql mod ( #20 )
...
* test: add more unit tests for sql mod
2022-05-09 15:01:19 +08:00
dennis zhuang
df1a99e27f
feat: test http server api ( #21 )
...
* feat: adds http server test
* feat: limit sql output to 10 rows
2022-05-09 14:54:03 +08:00
evenyag
d5de030600
feat: Add as_any() to opaque error
2022-05-09 12:35:55 +08:00
evenyag
5f48b4996b
chore: Address CR comments
2022-05-09 11:52:01 +08:00
evenyag
d2d4d88c89
test: Add MockError and add more tests for error
2022-05-07 17:29:56 +08:00
evenyag
e0c1bbfd21
refactor: Rename errors::ParserError to error::Error
2022-05-07 16:15:05 +08:00
evenyag
fae876ec63
test: Add more test for parser error
2022-05-07 16:07:41 +08:00
evenyag
56258d6821
test: Add more test for opaque error
2022-05-07 15:45:46 +08:00
evenyag
ec63353364
refactor: Move planner and adapters to datafusion mod
2022-05-07 15:27:00 +08:00
evenyag
6a20657591
refactor: query::query_engine::datafusion -> query::datafusion
2022-05-07 14:38:57 +08:00
evenyag
99c7ffb456
refactor: Define error for memory catalog
2022-05-07 14:13:31 +08:00
evenyag
83262acc0e
refactor: Add more imports to common_error::prelude
2022-05-07 11:42:33 +08:00
evenyag
63d9aa1bff
refactor: Refactor datanode error and impl ErrorExt for it
2022-05-07 11:34:23 +08:00
evenyag
7e2e3e3429
feat: Impl ErrorExt for opaque error and ParseError
2022-05-06 20:04:16 +08:00
evenyag
08ccb466cb
fix(query): Remove unnecessary unsafe impl Send/Sync for ExecutionPlanAdapter
2022-05-06 20:04:16 +08:00
evenyag
aa1a6b2205
feat: Add common-error crate and implement opaque error type.
2022-05-06 20:04:14 +08:00
dennis zhuang
f0db878bf5
feat: http server and cmd crate etc. ( #15 )
...
* feat: adds cmd crate and http server
* feat: impl sql http handler
* feat: convert all arrow array types
* feat: adds query test
* feat: adds test for datanode
* fix: format
* feat: refactor state.rs
* feat: adds collect test
* fix: by code review
* fix: style
2022-05-06 17:34:29 +08:00
Lei, Huang
f889ed5488
feat: INSERT statement and planner implementation ( #16 )
...
* feat: Add SQL parser definition and SHOW DATABASE implementation
* chores: Eliminate clippy warnings and errors.
* chores: remove Gt prefix in some structs; rename some mod; remove print(s) in unit tests; refactor crate layout;
feat: wrap sqlparser error;
* chores: reorder cargo dependency
* chores: fix code style
* chores: add #[cfg(test)] to unit tests
* style: fix test mod style
* feat: implement select query parser
* chores: remove unused dependency
* feat: implement TryInto<sqlparser::ast::Statement> for Statement
* chore: fix style issues
* refactor: wrap sqlparser Query inside Query statement variant to reduce complexity
* refactor: replace TryInto to TryFrom
* refactor: use [Rust 2018 mod convention](https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html#no-more-modrs )
* refactor: remove unnecessary file prefix in statement mod
* feat: implement INSERT parser (currently without INSERT validation)
* feat: wrap DataFusion planner and add simple query planner implementation
* refactor: move planner mod to query crate
* fix: styles and conventions
2022-05-05 16:28:38 +08:00
dennis zhuang
bf331ec4ac
feat: impl QueryEngine#execute, adds numbers table and query engine test ( #13 )
...
* feat: impl QueryEngine#execute, adds numbers table and query engine test
* fix: clippy warning
* fix: reuse runtime in context in table adapter
* fix: by CR comments
2022-04-27 15:15:26 +08:00
Lei, Huang
12eefc3cd0
feat: implement SELECT query parser. ( #12 )
...
* feat: Add SQL parser definition and SHOW DATABASE implementation
* chores: Eliminate clippy warnings and errors.
* chores: remove Gt prefix in some structs; rename some mod; remove print(s) in unit tests; refactor crate layout;
feat: wrap sqlparser error;
* chores: reorder cargo dependency
* chores: fix code style
* chores: add #[cfg(test)] to unit tests
* style: fix test mod style
* feat: implement select query parser
* chores: remove unused dependency
* feat: implement TryInto<sqlparser::ast::Statement> for Statement
* chore: fix style issues
* refactor: wrap sqlparser Query inside Query statement variant to reduce complexity
* refactor: replace TryInto to TryFrom
* refactor: use [Rust 2018 mod convention](https://doc.rust-lang.org/edition-guide/rust-2018/path-changes.html#no-more-modrs )
2022-04-27 15:14:33 +08:00
dennis zhuang
3a2f794f6c
feat: query engine impl on datafusion ( #10 )
...
* feat: query engine impl on datafusion
* feat: adds physical_optimizer, physical_planner and executor
* feat: impl adpaters between datafuion and greptime query engine core APIs.
* feat: impl PhysicalPlanAdapter and ExecutionPlanAdapter
* feat: rename table datafusion mod to adapter
* fix: clippy warning
* fix: conflicts with develop branch
* feat: add database mod
* fix: CR comment
* fix: by CR comments
* fix: conflicts with develop branch
* fix: by CR comments
2022-04-26 15:17:32 +08:00
evenyag
b505c87e8d
refactor: Rename base to common-base
2022-04-26 11:48:22 +08:00
evenyag
58f19b2a33
refactor(datatypes): pub use some types
2022-04-25 17:03:05 +08:00
evenyag
49081d818c
refactor: Divide common crate into small crates
2022-04-25 17:03:05 +08:00
evenyag
7f075d2c0f
refactor: Rename scalar mod to scalars
2022-04-25 17:03:05 +08:00
evenyag
6535f5c4cd
refactor: Rename CreateDataType to DataTypeBuilder
2022-04-25 17:03:05 +08:00
evenyag
7a015d4f2a
feat: Allow DataType/Vector converting into arrow's type
2022-04-25 17:03:05 +08:00
evenyag
445fd75712
feat: Implement ScalarVector for primitive/binary vector
2022-04-25 17:03:05 +08:00
evenyag
c9c5e69adf
feat: Implement BinaryType and BinaryVector
2022-04-25 17:03:05 +08:00
evenyag
d20191572e
feat: Implement PrimitiveType and PrimitiveVector
2022-04-25 17:03:05 +08:00
Lei, Huang
cb74f1ac34
feat: Add sql parser definition and trivial SHOW DATABASE implementation ( #8 )
...
* feat: Add SQL parser definition and SHOW DATABASE implementation
* chores: Eliminate clippy warnings and errors.
* chores: remove Gt prefix in some structs; rename some mod; remove print(s) in unit tests; refactor crate layout;
feat: wrap sqlparser error;
* chores: reorder cargo dependency
* chores: fix code style
* chores: add #[cfg(test)] to unit tests
* style: fix test mod style
2022-04-25 17:01:55 +08:00
evenyag
1fa0b4e3f9
chore: Setup code skeleton of datanode
2022-04-21 11:40:46 +08:00
evenyag
ced9a7c97f
chore: Create datanode, datatypes, log-store, object-store, query, table crates
2022-04-20 16:34:22 +08:00
evenyag
a6c6023737
feat: Init common crate
2022-04-19 18:44:51 +08:00
dennis zhuang
4ca5387bb8
chore: Initial commit
2022-04-19 17:56:27 +08:00