Lei, HUANG
fb9978e95d
refactor: catalog ( #1454 )
...
* wip
* add schema_async
* remove CatalogList
* remove catalog provider and schema provider
* fix
* fix: rename table
* fix: sqlness
* fix: ignore tonic error metadata
* fix: table engine name
* feat: rename catalog_async to catalog
* respect engine name in table regional value when deregistering tables
* fix: CR
2023-04-26 08:36:40 +00:00
Weny Xu
f2167663b2
feat: support to create external table ( #1372 )
...
* feat: support to create external table
* chore: apply suggestions from CR
* test: add create external table without ts type
* chore: apply suggestions from CR
* fix: fix import typo
* refactor: move consts to table crate
* chore: apply suggestions from CR
* refactor: rename create_table_schema
2023-04-24 14:43:12 +08:00
LFC
17daf4cdff
feat: support "delete" in distributed mode ( #1441 )
...
* feat: support "delete" in distributed mode
* fix: resolve PR comments
2023-04-24 12:07:50 +08:00
shuiyisong
7c6754d03e
feat: meter write request ( #1447 )
...
* chore: add write meter
* chore: update meter macro
* chore: update meter framework url to https
2023-04-24 11:42:06 +08:00
Weny Xu
d374859e24
refactor: replace Copy Format with datasource Format ( #1435 )
...
* refactor: replace Copy Format with datasource Format
* chore: apply suggestions from CR
* chore: apply suggestions from CR
2023-04-23 08:31:54 +00:00
Yingwen
1ee9ad4ca1
feat: manage multiple engine procedure in the engine manager ( #1434 )
...
* feat(table): Add engine procedure to engine manager
* feat(datanode): Get engine procedure from engine manager
* feat(table-procedure): Add source error to SubprocedureFailed
* test: Enable procedure in tests and pass all tests
* style(table-procedure): Fix clippy
2023-04-23 10:04:09 +08:00
dennis zhuang
2a9f482bc7
feat: show create table ( #1336 )
...
* temp commit
* feat: impl Display for CreateTable statement
* feat: impl show create table for standalone
* fix: forgot show.rs
* feat: clean code
* fix: typo
* feat: impl show create table for distributed
* test: add show create table sqlness test
* fix: typo
* fix: sqlness tests
* feat: render partition rules for distributed table
* Update src/sql/src/statements.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* Update src/sql/src/statements.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* Update src/sql/src/statements.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* Update src/sql/src/statements/create.rs
Co-authored-by: Yingwen <realevenyag@gmail.com >
* chore: by CR comments
* fix: compile error
* fix: missing column comments and extra table options
* test: add show create table test
* test: add show create table test
* chore: timestamp precision
* fix: test
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2023-04-21 11:37:16 +08:00
Yingwen
9cd2cf630d
feat: procedures for file table engine ( #1417 )
...
* refactor: Add table_ref() to requests as their methods
* feat: Add CreateImmutableFileTable
* feat: Add DropImmutableFileTable
* feat: Implement TableEngineProcedure for ImmutableFileTableEngine
* feat: Add common-procedure-test crate
* refactor: mito engine use common-procedure-test to test procedures
* test: Add test for create and drop table
* chore: Address review comments
2023-04-20 18:52:44 +08:00
Ruihang Xia
7152a1b79e
feat: expose output_ordering on scan plan ( #1425 )
...
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-04-20 17:58:48 +08:00
Yingwen
d988b43996
feat: Add drop table procedure to mito ( #1377 )
...
* feat: Add drop table procedure to mito
* feat: remove table from engine and then close it
2023-04-14 13:09:38 +08:00
Lei, HUANG
3e8ec8b73a
fix: avoid panic when no region found in table ( #1359 )
2023-04-11 16:58:18 +08:00
Weny Xu
29c6155ae3
feat: introduce file table engine ( #1323 )
...
* feat: introduce file table engine
* chore: apply cr suggestions
* refactor: refactor immutable manifest
* chore: apply cr suggestions
* refactor: refactor immutable manifest
* chore: apply suggestions from code review
Co-authored-by: dennis zhuang <killme2008@gmail.com >
* chore: apply suggestions from CR
* chore: apply suggestions from code review
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
---------
Co-authored-by: dennis zhuang <killme2008@gmail.com >
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
2023-04-10 12:03:36 +08:00
Ruihang Xia
da66138e80
refactor(error): remove backtrace, and introduce call-site location for debugging ( #1329 )
...
* wip: global replace
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix compile
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix warnings
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove unneeded tests of errors
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix ErrorExt trait implementator
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix warnings
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix format
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix pyo3 tests
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-04-06 04:06:00 +00:00
Eugene Tolbakov
59f7630000
feat: initial changes for compaction_time_window field support ( #1083 )
...
* feat(compaction_time_window): initial changes for compaction_time_window field support
* feat(compaction_time_window): move PickerContext creation
* feat(compaction_time_window): update region descriptor, fix formatting
* feat(compaction_time_window): add minor enhancements
* feat(compaction_time_window): fix failing test
* feat(compaction_time_window): return an error instead silently skip for the user provided compaction_time_window
* feat(compaction_time_window): add TODO reminder
2023-04-06 10:32:41 +08:00
Ruihang Xia
99353c6ce7
refactor: rename "value" semantic type to "field" ( #1326 )
...
* global replace
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* change desc table
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-04-04 11:14:28 +00:00
Weny Xu
451f9d2d4e
feat: support multi table engines ( #1277 )
...
* feat: support multi table engines
* refactor: adapt SqlHandler to support multiple table engines
* refactor: refactor TableEngineManager
* chore: apply review suggestions
* chore: apply review suggestions
* chore: apply review suggestions
* chore: snafu context styling
2023-04-03 14:49:12 +00:00
Yingwen
dee20144d7
feat: Implement procedure to alter a table for mito engine ( #1259 )
...
* feat: wip
* fix: Fix CreateMitoTable::table_schema not initialized from json
* feat: Implement AlterMitoTable procedure
* test: Add test for alter procedure
* feat: Register alter procedure
* fix: Recover procedures after catalog manager is started
* feat: Simplify usage of table schema in create table procedure
* test: Add rename test
* test: Add drop columns test
2023-03-31 14:40:54 +08:00
Lei, HUANG
15ee4ac729
fix: noop flush impl for numbers table ( #1247 )
...
* fix: noop flush impl for numbers table
* fix: clippy
2023-03-27 10:54:07 +08:00
LFC
92963b9614
feat: execute "delete" in query engine (in the form of "LogicalPlan") ( #1222 )
...
fix: execute "delete" in query engine (in the form of "LogicalPlan")
2023-03-24 12:11:58 +08:00
LFC
b77b561bc8
refactor: execute insert with select in query engine ( #1181 )
...
* refactor: execute insert with select in query engine
* fix: resolve PR comments
2023-03-23 10:38:26 +08:00
dennis zhuang
8fb97ea1d8
fix: losing region numbers after altering table ( #1209 )
2023-03-21 11:19:43 +08:00
Weny Xu
e19c8fa2b6
refactor: combine Copy To and Copy From ( #1197 )
...
* refactor: combine Copy To and Copy From
* Apply suggestions from code review
Co-authored-by: LFC <bayinamine@gmail.com >
* Apply suggestions from code review
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
---------
Co-authored-by: LFC <bayinamine@gmail.com >
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
2023-03-20 19:23:25 +08:00
Yingwen
ad5c47185d
feat: wait flush until the flush is done ( #1188 )
...
* feat: Add wait argument to flush
* test(storage): Fix flush tests
2023-03-20 11:25:19 +08:00
Weny Xu
facdda4d9f
feat: implement CONNECTION clause of Copy To ( #1163 )
...
* feat: implement CONNECTION clause of Copy To
* test: add tests for s3 backend
* Apply suggestions from code review
Co-authored-by: Yingwen <realevenyag@gmail.com >
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2023-03-16 11:36:38 +08:00
Lei, HUANG
17eb99bc52
feat: allow manual table flush through HTTP API ( #1184 )
2023-03-15 20:15:34 +08:00
Zheming Li
f712f978cf
feat: Report disk usage stats to metasrv thru heartbeat ( #1167 )
...
* feat: Report disk usage stats to metasrv thru heartbeat
Signed-off-by: Zheming Li <nkdudu@126.com >
* Update src/catalog/src/error.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
* Update src/catalog/src/lib.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
* Update src/mito/src/table.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
---------
Signed-off-by: Zheming Li <nkdudu@126.com >
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
2023-03-15 03:11:32 +00:00
LFC
8d3999df5f
fix: failed to run subquery wrapped in two parentheses ( #1157 )
2023-03-14 10:59:43 +08:00
Weny Xu
296c6dfcbf
feat: implement table flush ( #1121 )
...
* feat: add flush method for trait
* feat: implement flush via grpc
* chore: move table_dir/region_name/region_id to table crate
* chore: Update src/mito/src/table.rs
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2023-03-13 20:10:37 +08:00
Weny Xu
8a83de4ea5
feat: add shutdown for datanode ( #1160 )
2023-03-13 17:49:26 +08:00
Eugene Tolbakov
b31a6cb506
refactor: replace tempdir with tempfile ( #1123 )
...
* refactor: replace tempdir with tempfile
* refactor(query): move tempfile dependency under the workspace's Cargo.toml
* refactor(tempfile): create common-test-util
* refactor(tempfile): fix toml format
* refactor(tempfile): remove tempfile out of dependencies
* refactor(tempfile): fix incorrect toml
2023-03-08 11:15:56 +08:00
Weny Xu
7169fe2989
feat: implement Copy From ( #1064 )
2023-03-07 17:54:11 +08:00
Ning Sun
d402f83442
ci: generate apidocs when pushing to default branch ( #1093 )
...
* ci: generate apidocs when pushing to default branch
* ci: require clippy before running tests
* fix: resolve new clippy warnings on primitive slice
* fix: resolve more clippy warnings
* Update .github/workflows/apidoc.yml
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* ci: add an index html to redirect
---------
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2023-03-01 13:18:26 +08:00
LFC
11d45e2918
refactor: upgrade DataFusion, Arrow and Sqlparser ( #1074 )
...
* refactor: upgrade DataFusion, Arrow and Sqlparser
* fix: resolve PR comments
2023-02-27 22:20:08 +08:00
Lei, HUANG
f42acc90c2
fix: allow empty TableOptions ( #1063 )
...
fix: allow default TableOptions to avoid panic when upgrading from older versions
2023-02-22 19:19:13 +08:00
Lei, HUANG
e17d5a1c41
feat: support table options ( #1044 )
...
* feat: change table options from string map to a struct, add ttl and write_buffer_size
* fix: also pass table options to table meta
* feat: pass table options when opening/creating regions
* fix: CR comments
2023-02-21 08:10:23 +00:00
Yingwen
aaaf24143d
feat: Procedure to create a mito engine ( #1035 )
...
* feat: wip
* feat: Implement procedure to create mito table
* feat: Add create_table_procedure to TableEngine
* feat: Impl dump and lock for CreateMitoTable
* feat: Impl CreateMitoTable::execute and register it to manager
* feat(common-procedure): pub local mod
* feat: Add simple test for MitoCreateTable
* style: Fix clippy
* refactor: Move create_table_procedure to a new trait TableEngineProcedure
2023-02-21 09:40:56 +08:00
Jiachun Feng
9161796dfa
feat: export the data from a table to parquet files ( #1000 )
...
* feat: copy table parser
* feat: coopy table
* chore: minor fix
* chore: give stmt a more clearer name
* chore: unified naming
* chore: minor change
* chore: add a todo
* chore: end up with an empty file when occur an empty table
* feat: format with copy table
* feat: with options
* chore: by cr
* chore: default 5M rows per segment
* Update src/datanode/src/sql/copy_table.rs
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
* Update src/datanode/src/sql/copy_table.rs
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
* Update src/datanode/src/error.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
---------
Co-authored-by: Lei, HUANG <6406592+v0y4g3r@users.noreply.github.com >
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
2023-02-20 16:43:50 +08:00
Yingwen
ddbc97befb
refactor: changes CreateTableRequest::schema to RawSchema ( #1018 )
...
* refactor: changes CreateTableRequest::schema to RawSchema
* refactor(grpc-expr): create_table_schema returns RawSchema
2023-02-16 16:04:17 +08:00
LFC
803b7f0633
feat: implement "drop table" in distributed mode (both in SQL and gRPC) ( #944 )
...
* feat: implement "drop table" in distributed mode (both in SQL and gRPC)
refactor: create distributed table
some details:
- set table global value in Meta, as well as table routes value. Datanode only set table regional value
- complete instance SQL tests both in standalone and distributed mode
* fix: rebase develop
* fix: resolve PR comments
2023-02-08 07:36:38 +00:00
Lei, HUANG
5d62e193bd
feat: support multi regions on datanode ( #653 )
...
* wip: fix compile errors
* chore: move splitter to partition crate
* fix: remove useless variants in frontend errors
* chore: move more partition related code to partition manager
* fix: license header
* wip: move WriteSplitter to PartitionRuleManager
* fix: clippy warnings
* chore: remove useless error variant and format toml
* fix: cr comments
* chore: resolve conflicts
* chore: rebase develop
* fix: cr comments
* feat: support multi regions on datanode
* chore: rebase onto develop
* chore: rebase develop
* chore: rebase develop
* wip
* fix: compile errors
* feat: multi region
* fix: CR comments
* feat: allow stat existing regions without actually open it
* fix: use table meta in manifest to recover region info
2023-02-07 10:46:18 +08:00
LFC
af935671b2
feat: support "use" in GRPC requests ( #922 )
...
* feat: support "use catalog and schema"(behave like the "use" in MySQL) in GRPC requests
* fix: rebase develop
2023-02-02 20:02:56 +08:00
Ruihang Xia
36a13dafb7
build(deps): bump tokio to 1.24.2 ( #900 )
...
deps: bump tokio to 1.24.2
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-01-29 11:13:37 +08:00
Lei, HUANG
43aefc5d74
feat: prunine sst files according to time range in filters ( #887 )
...
* 1. Reimplement Eq for Timestamp
2. Add and/or for GenericRange
* feat: extract time range from filters
* feat: select sst files according to time range
* fix: clippy
* fix: empty value in range
* fix: some cr comments
* fix: return optional timestamp range
* fix: cr comments
2023-01-28 15:16:41 +08:00
Lei, HUANG
daad38360f
fix: impl total order for Timestamp ( #878 )
...
* 1. Reimplement Eq for Timestamp
2. Add and/or for GenericRange
* chore: add test for TimestampRange with diff unit
* chore: optimize split implementation
* fix: clippy
* fix: add fast path
* fix: CR comments
2023-01-16 17:37:30 +08:00
elijah
6775c5be87
feat: support renaming table in the catalog manger ( #824 )
...
* feat: support renaming table in the catalog manger
* feat: implement rename table for local catalog manager
* chore: fmt code
* fix: update system catalog when renaming table in local catalog manager
* chore: add instance test for rename table
* chore: fix frontend test
* chore: fix comment
* chore: fix rename table test
* fix: renaming a table with an existing name
* fix: improve the system catalog's renaming process
* chore: improve the code
* chore: improve the comment
Co-authored-by: Yingwen <realevenyag@gmail.com >
* chore: improve the code
* chore: fix tests
* chore: fix instance_test
* chore: improve the code
Co-authored-by: Yingwen <realevenyag@gmail.com >
2023-01-12 19:48:18 +08:00
Ruihang Xia
a9b42b436d
feat: PromQL handler in query engine ( #861 )
...
* example promql test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* make the mock test works
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update planner test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippys
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add license header
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-01-11 11:31:07 +08:00
dennis zhuang
9428e70971
feat: integration test ( #770 )
...
* feat: add insert test cases
* fix: update results after rebase develop
* feat: supports unsigned integer types and big_insert test
* test: add insert_invalid test
* feat: supports time index constraint for bigint type
* chore: time index column at last
* test: adds more order, limit test
* fix: style
* feat: adds numbers table in standable memory catalog mode
* feat: enable fail_fast and test_filter in sqlness
* feat: add more tests
* fix: test_filter
* test: add alter tests
* feat: supports if_not_exists when create database
* test: filter_push_down and catalog test
* fix: compile error
* fix: delete output file
* chore: ignore integration test output in git
* test: update all integration test results
* fix: by code review
* chore: revert .gitignore
* feat: sort the show tables/databases results
* chore: remove issue link
* fix: compile error and code format after rebase
* test: update all integration test results
2023-01-10 18:15:50 +08:00
Yingwen
072e5f78b4
feat: Implement delete for table ( #801 )
...
* feat: Table default implementations for insert/alter return error
* feat: Implement delete for mito table
* docs: Fix comment
2023-01-05 20:03:40 +08:00
Ruihang Xia
afd9866709
feat: basic promql planner for single arg function call ( #828 )
...
* wip: draft planner
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* handle function args
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* a simple test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* list all operators that accept 1 instant vector as input
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* simplify test cases
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* clean up
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update cargo lock
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* CR suggessions
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* CR suggessions
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* change the way to handle metric name
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-01-05 16:30:54 +08:00
LFC
50cc0e9b51
feat: Impl Insert functionality of Arrow Flight service for Frontend Instance ( #821 )
...
* feat: Implement Insert functionality of Arrow Flight service for Frontend Instance
* fix: update license content
* Update src/common/grpc-expr/src/alter.rs
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
* fix: resolve PR comments
* fix: resolve PR comments
Co-authored-by: fys <40801205+Fengys123@users.noreply.github.com >
2023-01-04 17:48:59 +08:00