LFC
d13de0aeba
refactor: remove AdminExpr, make DDL expressions as normal GRPC requests ( #808 )
...
* refactor: remove AdminExpr, make DDL expressions as normal GRPC requests
2022-12-30 16:47:45 +08:00
LFC
de6803d253
feat: handle InsertRequest(formerly InsertExpr) in new Arrow Flight ( #800 )
...
feat: handle InsertRequest(formerly InsertExpr) in new Arrow Flight interface
2022-12-30 10:24:09 +08:00
LFC
04df80e640
fix: further ease the restriction of executing SQLs in new GRPC interface ( #797 )
...
* fix: carry not recordbatch result in FlightData, to allow executing SQLs other than selection in new GRPC interface
* Update src/datanode/src/instance/flight/stream.rs
Co-authored-by: Jiachun Feng <jiachun_feng@proton.me >
2022-12-28 16:43:21 +08:00
LFC
a14ec94653
fix: ease the restriction of the original "SelectExpr" ( #794 )
...
fix: ease the restriction of the original "SelectExpr" since we used to pass SQLs other than selection in the related GRPC interface
2022-12-27 16:50:12 +08:00
Ruihang Xia
26a3e93ca7
chore: util workspace deps in more places ( #792 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-27 16:26:59 +08:00
elijah
3978931b8e
feat: support parsing the RENAME TABLE statements in the parser ( #780 )
...
* feat: add parsing `alter rename table` syntax to the parser
* chore: fix clippy
* chore: add test for parser
* fix: add test for parsing RENAME keyword
* chore: remove unused code
* fix: parse table name object
Co-authored-by: Yingwen <realevenyag@gmail.com >
* chore: fmt code
Co-authored-by: Yingwen <realevenyag@gmail.com >
2022-12-27 14:53:40 +08:00
LFC
7829e4a219
feat: Implement Arrow Flight Service (except gRPC server) for selection ( #768 )
...
* feat: Implement Arrow Flight Service (but not the GRPC server) for selection
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-26 16:41:10 +08:00
LFC
dc52a51576
chore: upgrade to Arrow 29.0 and use workspace package and dependencies ( #782 )
...
* chore: upgrade to Arrow 29.0 and use workspace package and dependencies
* fix: resolve PR comments
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-23 14:28:37 +08:00
LFC
ea9af42091
chore: upgrade Rust to nightly 2022-12-20 ( #772 )
...
* chore: upgrade Rust to nightly 2022-12-20
* chore: upgrade Rust to nightly 2022-12-20
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-21 19:32:30 +08:00
LFC
77182f5024
chore: upgrade Arrow to version 28, and DataFusion to 15 ( #771 )
...
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-21 17:02:11 +08:00
Ning Sun
539ead5460
feat: check database existence on http api ( #764 )
...
* feat: check database existance on http api
* Update src/servers/src/http/handler.rs
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* feat: use database not found status code
* test: add assertion for status code
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-21 10:28:45 +08:00
Ning Sun
ea1896493b
feat: allow multiple sql statements in query string ( #699 )
...
* feat: allow multiple sql statement in query string
* test: add a test for multiple statement call
* feat: add temprary workaround for standalone mode
* fix: resolve sql parser issue temporarily
* Update src/datanode/src/instance/sql.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* fix: adopt new sql handler
* refactor: revert changes in query engine
* refactor: assume sql-statement 1-1 on datanode
* test: use frontend for integration test
* refactor: add statement execution api for explicit single statement call
* fix: typo
* refactor: rename query method
* test: add test case for error
* test: data type change adoption
* chore: add todo from review
* chore: remove obsolete comments
* fix: resolve resolve issues
Co-authored-by: Yingwen <realevenyag@gmail.com >
2022-12-16 19:50:20 +08:00
Jiachun Feng
66bca11401
refactor: remove optional from the protos ( #756 )
2022-12-16 15:47:51 +08:00
Lei, HUANG
0653301754
feat: replace arrow2 with official implementation 🎉 ( #753 )
...
* chore: kick off. change datafusion/arrow/parquet to target version
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* chore: replace one last datafusion dep
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: arrow_array switch to arrow
* chore: update dep of binary vector
* chore: fix wrong merge commit
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: Switch to datatypes2
* feat: Make recordbatch compile
* chore: sort Cargo.toml
* feat: Fix common::recordbatch compiler errors
* feat: Fix recordbatch test compiling issue
* fix: api crate (#708 )
* fix: rename ConcreteDataType::timestamp_millis_type to ConcreteDataType::timestamp_millisecond_type. fix other warnings regarding timestamp
* fix: revert changes in datatypes2
* fix: helper
* chore: delete datatypes based on arrow2
* feat: Fix some compiler errors in common::query (#710 )
* feat: Fix some compiler errors in common::query
* feat: test_collect use vectors api
* fix: common-query subcrate (#712 )
* fix: record batch adapter
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix error enum
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: Fix common::query compiler errors (#713 )
* feat: Move conversion to ScalarValue to value.rs
* fix: Fix common::query compiler errors
This commit also make InnerError pub(crate)
* feat: Implements diff accumulator using WrapperType (#715 )
* feat: Remove usage of opaque error from common::recordbatch
* feat: Remove opaque error from common::query
* feat: Fix diff compiler errors
Now common_function just use common_query's Error and Result. Adds
a LargestType associated type to LogicalPrimitiveType to get the largest
type a logical primitive type can cast to.
* feat: Remove LargestType from NativeType trait
* chore: Update comments
* feat: Restrict Scalar::RefType of WrapperType to itself
Add trait bound `for<'a> Scalar<RefType<'a> = Self>` to WrapperType
* chore: Address CR comments
* chore: Format codes
* fix: fix compile error for mean/polyval/pow/interp ops
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Revert "fix: fix compile error for mean/polyval/pow/interp ops"
This reverts commit fb0b4eb826 .
* fix: Fix compiler errors in argmax/rate/median/norm_cdf (#716 )
* fix: Fix compiler errors in argmax/rate/median/norm_cdf
* chore: Address CR comments
* fix: fix compile error for mean/polyval/pow/interp ops (#717 )
* fix: fix compile error for mean/polyval/pow/interp ops
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* simplify type bounds
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: fix argmin/percentile/clip/interp/scipy_stats_norm_pdf errors (#718 )
fix: fix argmin/percentile/clip/interp/scipy_stats_norm_pdf compiler errors
* fix: fix other compile error in common-function (#719 )
* further fixing
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix all compile errors in common function
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: Fix tests and clippy for common-function subcrate (#726 )
* further fixing
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix all compile errors in common function
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* revert test changes
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: row group pruning (#725 )
* fix: row group pruning
* chore: use macro to simplify stats implemetation
* fxi: CR comments
* fix: row group metadata length mismatch
* fix: simplify code
* fix: Fix common::grpc compiler errors (#722 )
* fix: Fix common::grpc compiler errors
This commit refactors RecordBatch and holds vectors in the RecordBatch
struct, so we don't need to cast the array to vector when doing
serialization or iterating the batch.
Now we use the vector API instead of the arrow API in grpc crate.
* chore: Address CR comments
* fix common record batch
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: Fix compile error in server subcrate (#727 )
* fix: Fix compile error in server subcrate
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove unused type alias
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* explicitly panic
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Update src/storage/src/sst/parquet.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Yingwen <realevenyag@gmail.com >
* fix: Fix common grpc expr (#730 )
* fix compile errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* rename fn names
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix styles
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix wranings in common-time
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: pre-cast to avoid tremendous match arms (#734 )
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* feat: upgrade storage crate to arrow and parquet offcial impl (#738 )
* fix: compile erros
* fix: parquet reader and writer
* fix: parquet reader and writer
* fix: WriteBatch IPC encode/decode
* fix: clippy errors in storage subcrate
* chore: remove suspicious unwrap
* fix: some cr comments
* fix: CR comments
* fix: CR comments
* fix: Fix compiler errors in catalog and mito crates (#742 )
* fix: Fix compiler errors in mito
* fix: Fix compiler errors in catalog crate
* style: Fix clippy
* chore: Fix use
* Merge pull request #745
* fix nyc-taxi and util
* Merge branch 'replace-arrow2' into fix-others
* fix substrait
* fix warnings and error in test
* fix: Fix imports in optimizer.rs
* fix: errors in optimzer
* fix: remove unwrap
* fix: Fix compiler errors in query crate (#746 )
* fix: Fix compiler errors in state.rs
* fix: fix compiler errors in state
* feat: upgrade sqlparser to 0.26
* fix: fix datafusion engine compiler errors
* fix: Fix some tests in query crate
* fix: Fix all warnings in tests
* feat: Remove `Type` from timestamp's type name
* fix: fix query tests
Now datafusion already supports median, so this commit also remove the
median function
* style: Fix clippy
* feat: Remove RecordBatch::pretty_print
* chore: Address CR comments
* Update src/query/src/query_engine/state.rs
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* fix: frontend compile errors (#747 )
fix: fix compile errors in frontend
* fix: Fix compiler errors in script crate (#749 )
* fix: Fix compiler errors in state.rs
* fix: fix compiler errors in state
* feat: upgrade sqlparser to 0.26
* fix: fix datafusion engine compiler errors
* fix: Fix some tests in query crate
* fix: Fix all warnings in tests
* feat: Remove `Type` from timestamp's type name
* fix: fix query tests
Now datafusion already supports median, so this commit also remove the
median function
* style: Fix clippy
* feat: Remove RecordBatch::pretty_print
* chore: Address CR comments
* feat: Add column_by_name to RecordBatch
* feat: modify select_from_rb
* feat: Fix some compiler errors in vector.rs
* feat: Fix more compiler errors in vector.rs
* fix: fix table.rs
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: Fix compiler errors in coprocessor
* fix: Fix some compiler errors
* fix: Fix compiler errors in script
* chore: Remove unused imports and format code
* test: disable interval tests
* test: Fix test_compile_execute test
* style: Fix clippy
* feat: Support interval
* feat: Add RecordBatch::columns and fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* fix: Fix All The Tests! (#752 )
* fix: Fix several tests compile errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: some compile errors in tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: compile errors in frontend tests
* fix: compile errors in frontend tests
* test: Fix tests in api and common-query
* test: Fix test in sql crate
* fix: resolve substrait error
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* chore: add more test
* test: Fix tests in servers
* fix instance_test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* test: Fix tests in tests-integration
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Lei, HUANG <mrsatangel@gmail.com >
Co-authored-by: evenyag <realevenyag@gmail.com >
* fix: clippy errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: evenyag <realevenyag@gmail.com >
2022-12-15 18:49:12 +08:00
LFC
61d8bc2ea1
refactor(frontend): minor changes around FrontendInstance constructor ( #748 )
...
* refactor: minor changes in some testing codes
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-15 14:34:40 +08:00
Lei, HUANG
756c068166
feat: logstore compaction ( #740 )
...
* feat: add benchmark for wal
* add bin
* feat: impl wal compaction
* chore: This reverts commit ef9f2326
* chore: This reverts commit 9142ec0e
* fix: remove empty files
* fix: failing tests
* fix: CR comments
* fix: Mark log as stable after writer applies manifest
* fix: some cr comments and namings
* chore: rename all stable_xxx to obsolete_xxx
* chore: error message
2022-12-14 16:15:29 +08:00
Lei, HUANG
9ad6ddb26e
fix: remove useless metaclient field from datanode Instance ( #744 )
2022-12-13 14:26:26 +08:00
fys
4fdf26810c
feat: support auth in frontend ( #688 )
...
* feat: add UserProvider trait
* chore: minor fix
* support pg mysql
* refactor and add some logs
* chore: add license
Co-authored-by: shuiyisong <xixing.sys@gmail.com >
2022-12-08 11:51:52 +08:00
dennis zhuang
7f59758e69
feat: bump opendal version to 0.22 ( #721 )
...
* feat: bump opendal version to 0.22
* fix: LoggingLayer
2022-12-08 11:19:21 +08:00
LFC
833216d317
refactor: directly invoke Datanode methods in standalone mode (part 1) ( #694 )
...
* refactor: directly invoke Datanode methods in standalone mode
* test: add more unit tests
* fix: get rid of `println` in testing codes
* fix: resolve PR comments
* fix: resolve PR comments
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-07 11:37:59 +08:00
Ruihang Xia
90c832b33d
refactor: drop support of physical plan query interface ( #714 )
...
* refactor: drop support of physical plan query interface
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* refactor: collapse server/grpc sub-module
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* refactor: remove unused errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-06 19:23:32 +08:00
LFC
8959dbcef8
feat: Substrait logical plan ( #704 )
...
* feat: use Substrait logical plan to query data from Datanode in Frontend in distributed mode
* fix: resolve PR comments
* fix: resolve PR comments
* fix: resolve PR comments
Co-authored-by: luofucong <luofucong@greptime.com >
2022-12-06 19:21:57 +08:00
Ruihang Xia
6fb413ae50
ci: add toml format linter ( #706 )
...
* chore: run taplo format
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* ci: add workflow to check toml
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* rerun formatter with ident to 4 spaces
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update check command
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-12-05 20:03:10 +08:00
dennis zhuang
6720bc5f7c
fix: validate create table request in mito engine ( #690 )
...
* fix: validate create table request in mito engine
* fix: comment
* chore: remove TIMESTAMP_INDEX in system.rs
2022-12-05 11:01:43 +08:00
shuiyisong
8232015998
fix: cargo sort in pre-commit ( #689 )
2022-12-02 16:19:31 +08:00
LFC
6127706b5b
feat: support "use" stmt part 1 ( #672 )
...
* feat: a bare sketch of session; support "use" in MySQL server; modify insertion and selection related codes in Datanode
2022-12-01 17:05:32 +08:00
dennis zhuang
2e17e9c4b5
feat: supports s3 storage ( #656 )
...
* feat: adds s3 object storage configuration
* feat: adds s3 integration test
* chore: use map
* fix: forgot license header
* fix: checking if bucket is empty in test_on
* chore: address CR issues
* refactor: run s3 test with dotenv
* chore: randomize grpc port for test
* fix: README in tests-integration
* chore: remove redundant comments
2022-12-01 10:59:14 +08:00
Dongxu Wang
6d24f7ebb6
refactor: bump axum 0.6, use recommended way to nest routes ( #668 )
2022-11-30 20:04:33 +08:00
SSebo
68c2de8e45
feat: mysql and pg server support tls ( #641 )
...
* feat: mysql and pg server support tls
* chore: replace opensrv-mysql to original
* chore: TlsOption is required but supply default value
* feat: mysql server support force tls
* chore: move TlsOption to servers
* test: mysql server disable / prefer / required tls mode
* test: pg server disable / prefer / required tls mode
* chore: add doc and remove no used code
* chore: add TODO and restore cargo linker config
2022-11-30 12:46:15 +08:00
Ning Sun
75dcf2467b
refactor: add tests-integration module ( #590 )
...
* refactor: add integration-tests module
* Apply suggestions from code review
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
* test: move grpc module to tests-integration
* test: adapt new standalone mode
* test: improve http assertion
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2022-11-29 16:28:58 +08:00
dennis zhuang
5fddb799f7
feat: enable atomic write for file object storage ( #643 )
...
* fix: remove opendal from catalog dependencies
* feat: enable atomic writing for fs service
2022-11-28 16:01:32 +08:00
Xuanwo
4085fc7899
chore: Bump OpenDAL to v0.21.1 ( #639 )
...
* deps: Bump OpenDAL to v0.21.1
Signed-off-by: Xuanwo <github@xuanwo.io >
* Avoid using raw types when not needed
Signed-off-by: Xuanwo <github@xuanwo.io >
Signed-off-by: Xuanwo <github@xuanwo.io >
2022-11-27 10:18:39 +08:00
Ruihang Xia
30940e692a
feat: impl DROP TABLE on memory catalog based standalone mode ( #630 )
...
* feat: implement drop table for standalone mode
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update integration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* enhancement test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-11-25 11:53:46 +08:00
Mike Yang
b371ce0f48
test: added tests for statements methods ( #622 )
...
* test: added tests for parse_column_default_constraint
* test: added test for sql_column_def_to_grpc_column_def
* refactor: remove hardcode in test
2022-11-25 11:35:06 +08:00
Lei, HUANG
ac7f52d303
fix: start datanode instance before frontend services ( #634 )
2022-11-25 11:25:57 +08:00
fys
c5b0d2431f
feat: remove InsertBatch in gRPC message ( #570 )
2022-11-24 14:04:48 +08:00
Lei, HUANG
4038dd4067
fix: add concurrency control for catalog manager ( #619 )
2022-11-24 11:10:33 +08:00
Dongxu Wang
8be0f05570
chore: able to config axum timeout in toml ( #624 )
2022-11-24 11:09:21 +08:00
Ruihang Xia
7b37e99a45
feat: deregister table for MemoryCatalogManager ( #620 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2022-11-24 09:36:27 +08:00
dennis zhuang
c09775d17f
feat: adds metrics, tracing and retry layer to object-store ( #621 )
2022-11-23 11:40:03 +08:00
Francis Du
4a9cf49637
feat: support explain syntax ( #546 )
2022-11-22 21:22:32 +08:00
Lei, HUANG
c144a1b20e
feat: impl alter table in distributed mode ( #572 )
2022-11-22 15:17:25 +08:00
LFC
62fcb54258
fix: correctly open table when distributed datanode restart ( #576 )
...
Co-authored-by: luofucong <luofucong@greptime.com >
2022-11-21 15:15:14 +08:00
Dongxu Wang
b6fa316c65
chore: correct typos ( #589 ) ( #592 )
2022-11-21 14:07:45 +08:00
Lei, HUANG
ca5734edb3
feat: disable mysql server on datande when running standalone mode ( #593 )
2022-11-21 12:12:26 +08:00
Yingwen
22ae983280
refactor: Use re-exported arrow mod from datatypes crate ( #571 )
2022-11-18 18:38:07 +08:00
Igor Morozov
e1f326295f
feat: implement DESCRIBE TABLE ( #558 )
...
Also need to support describe table in other catalog/schema
2022-11-18 16:34:00 +08:00
aievl
6d762aa9dc
feat: update mysql default listen port to 4406 ( #568 )
...
Co-authored-by: zhaozhenhang <zhaozhenhang@kuaishou.com >
2022-11-18 14:55:11 +08:00
dennis zhuang
f8788273d5
feat: drop column for alter table ( #562 )
...
* feat: drop column for alter table
* refactor: rename RemoveColumns to DropColumns
* test: alter table
* chore: error msg
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* fix: test_parse_alter_drop_column
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2022-11-17 23:00:16 +08:00
Lei, Huang
8faa6b0f09
refactor: start options ( #545 )
...
* refactor: config options for frontend/datanode/standalone
* chore: rename MetaClientOpts::metasrv_addr to MetaClientOpts::metasrv_addrs
* fix: clippy
* fix: change default meta-srv addr to 127.0.0.1:3002
2022-11-17 11:47:39 +08:00