Weny Xu
a0f243c128
feat(procedure): enable auto split large value ( #3628 )
...
* chore: add comments
* chore: remove `pub`
* chore: rename to `merge_multiple_values`
* chore: fix typo
* feat(procedure): enable auto split large value
* chore: apply suggestions from CR
* chore: rename to `max_metadata_value_size`
* chore: remove the NoneAsEmptyString
* chore: set default max_metadata_value_size to 1500KiB
2024-04-02 12:13:59 +00:00
Ning Sun
500f9f10fc
feat: allow cross-schema query in promql ( #3545 )
...
* feat: add __schema__ tag for promql parser
* feat: disable matcher op other than equals
* test: add more test to ensure context getting reset
* test: add integration test
* test: refactor tests
* refactor: remove duplicated test code
* refactor: update according to review comments
* test: add sqlness test for cross schema scenario
---------
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2024-03-29 07:41:01 +00:00
JeremyHi
f49cd0ca18
refactor: cache invalidator ( #3611 )
...
* chore: remove some alias
* refactor: cache invalidator
2024-03-29 07:33:51 +00:00
niebayes
d5ba2fcf9d
test: add more integration test for kafka wal ( #3190 )
...
* test: add integration tests for kafka wal
* chore: rebase main
* chore: unify naming convention for wal config
* chore: add register loaders switch
* chore: alter tables by adding a new column
* chore: move rand to dev-dependencies
* chore: update Cargo.lock
2024-03-28 06:55:18 +00:00
JeremyHi
9428cb8e7c
feat: remove support for logical tables in the create table procedure ( #3592 )
...
* feat: Remove support for logical tables in the create table procedure
* chore: remove the redandent table ids alloc
* chore: minor fix
2024-03-27 10:03:42 +00:00
JeremyHi
58c7858cd4
feat: update physical table schema on alter logical tables ( #3585 )
...
* feat: update physical table schema on alter
* feat: alter logical table in sql path
* feat: invalidate cache step1
* feat: invalidate cache step2
* feat: invalidate cache step3
* feat: invalidate cache step4
* fix: failed ut
* fix: standalone cache invalidator
* feat: log the count of already finished
* feat: re-invalidate cache
* chore: by comment
* chore: Update src/common/meta/src/ddl/create_logical_tables.rs
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2024-03-26 14:29:53 +00:00
Ruihang Xia
2b2fd80bf4
feat: return new added columns in region server's extension response ( #3533 )
...
* feat: adapt the new proto response
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update interfaces
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* write columns to extension
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* use physical column's schema
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* sort logical columns by name
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* format code
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* return physical table's column
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Update src/common/meta/src/datanode_manager.rs
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
* implement sort column logic
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* proxy create table procedure to create logical table
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add unit test for sort_columns
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness cases
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
2024-03-23 09:31:16 +00:00
Lei, HUANG
86fb9d8ac7
refactor: remove redudant PromStoreProtocolHandler::write ( #3553 )
...
refactor: remove redudant PromStoreProtocolHandler::write API and rename PromStoreProtocolHandler::write_fast to write
2024-03-22 02:09:00 +00:00
shuiyisong
3acd5bfad0
chore: http header with metrics ( #3536 )
...
* chore: bring write cost to output
* chore: add write cost to greptimev1result
* chore: add metrics to influxdb write resp header
* chore: add metrics to prom store
* chore: add metrics to otlp
* chore: add debug log
* fix: prom remote read with output
* fix: prom queries don't output metrics header
* chore: extract header value
* chore: refactor code
* chore: fix cr issue
2024-03-18 11:21:19 +00:00
tison
cafb4708ce
refactor: validate constraints eagerly ( #3472 )
...
* chore: validate constraints eagerly
Signed-off-by: tison <wander4096@gmail.com >
* use timestamp column
Signed-off-by: tison <wander4096@gmail.com >
* fixup
Signed-off-by: tison <wander4096@gmail.com >
* lint
Signed-off-by: tison <wander4096@gmail.com >
* compile
Signed-off-by: tison <wander4096@gmail.com >
---------
Signed-off-by: tison <wander4096@gmail.com >
2024-03-12 13:09:34 +00:00
Yingwen
9aa8f756ab
fix: allow passing extra table options ( #3484 )
...
* fix: do not check options in parser
* test: fix tests
* test: fix sqlness
* test: add sqlness test
* chore: log options
* chore: must specify compaction type
* feat: validate option key
* feat: add option key validation back
2024-03-12 07:03:52 +00:00
shuiyisong
0bb949787c
refactor: introduce new Output with OutputMeta ( #3466 )
...
* refactor: introduce new output struct
* chore: add helper function
* chore: update comment
* chore: update commit
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
* chore: rename according to cr
---------
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2024-03-11 02:24:09 +00:00
JeremyHi
352bd7b6fd
feat: max-txn-ops option ( #3458 )
...
* feat: max-txn-ops limit
* chore: by comment
2024-03-08 02:34:40 +00:00
Ruihang Xia
020635063c
feat: implement multi-dim partition rule ( #3409 )
...
* generate expr rule
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* implement show create for new partition rule
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* implement row spliter
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix: fix failed tests
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: fix lint issues
Signed-off-by: WenyXu <wenymedia@gmail.com >
* chore: ignore tests for deprecated partition rule
* chore: remove unused partition rule tests setup
* test(sqlness): add basic partition tests
* test(multi_dim): add basic find region test
* address CR comments
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Signed-off-by: WenyXu <wenymedia@gmail.com >
Co-authored-by: WenyXu <wenymedia@gmail.com >
2024-03-05 11:39:15 +00:00
dennis zhuang
e6819412c5
refactor: show tables and show databases ( #3423 )
...
* refactor: show tables and show databases
* chore: clean code
2024-03-04 06:15:17 +00:00
Weny Xu
a8cbec824c
refactor: refactor TableRouteManager ( #3392 )
...
* feat: introduce TableRouteStorage
* refactor: remove get & batch_get in TableRouteManager
* refactor: move txn related fn to TableRouteStorage
* chore: apply suggestions from CR
* chore(codecov): ingore tests-integration dir
2024-02-28 06:18:09 +00:00
Ruihang Xia
3544c9334c
feat!: new partition grammar - parser part ( #3347 )
...
* parser part
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix test in sql
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* comment out and ignore some logic
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update sqlness cases
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update region migration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* temporary disable region migration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* allow dead code
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update integration test
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-02-27 07:20:16 +00:00
Ning Sun
3887d207b6
feat: make tls certificates/keys reloadable (part 1) ( #3335 )
...
* feat: make tls certificates/keys reloadable (part 1)
* feat: add notify watcher for cert/key files
* test: add unit test for watcher
* fix: correct usage of watcher
* fix: skip watch when tls disabled
2024-02-26 09:37:54 +00:00
dennis zhuang
564fe3beca
feat: impl migrate_region and procedure_state SQL function ( #3325 )
...
* fix: logical region can't find region routes
* feat: fetch partitions info in batch
* refactor: rename batch functions
* refactor: rename DdlTaskExecutor to ProcedureExecutor
* feat: impl migrate_region and query_procedure_state for ProcedureExecutor
* feat: adds SQL function procedure_state and finish migrate_region impl
* fix: constant vector
* feat: unit tests for migrate_region and procedure_state
* test: test region migration by SQL
* fix: compile error after rebeasing
* fix: clippy warnings
* feat: ensure procedure_state and migrate_region can be only called under greptime catalog
* fix: license header
2024-02-22 02:37:11 +00:00
Weny Xu
41656c8635
refactor: allocate table id in the procedure ( #3271 )
...
* refactor: replace TableMetadataManager with TableNameManager
* refactor: allocate table id in the procedure
* refactor: refactor client logical of handling retries
* feat(test_util): add TestCreateTableExprBuilder
* feat(test_util): add MockDatanodeManager
* feat(test_util): add new_ddl_context
* feat(test_util): add build_raw_table_info_from_expr
* feat(test_util): add MockDatanodeManager::new
* feat(procedure): add downcast_output_ref to Status
* test(create_table): add tests for CreateTableProcedure on_prepare
* refactor(ddl): rename handle_operate_region_error to add_peer_context_if_need
* test(create_table): add tests for CreateTableProcedure on_datanode_create_regions
* test(create_table): add tests for CreateTableProcedure on_create_metadata
* refactor(meta): use CreateTableExprBuilder
* feat(create_table): ensure number of partitions is greater than 0
* refactor: rename to add_peer_context_if_needed
* feat: add context for panic
* refactor: simplify the should_retry
* refactor: use Option<&T> instead of &Option<T>
* refactor: move downcast_output_ref under cfg(test)
* chore: fmt toml
2024-02-21 04:38:46 +00:00
shuiyisong
bf5e1905cd
refactor: bring metrics to http output ( #3247 )
...
* refactor: bring metrics to http output
* chore: remove unwrap
* chore: make walk plan accumulate
* chore: change field name and comment
* chore: add metrics to http resp header
* chore: move PrometheusJsonResponse to a separate file and impl IntoResponse
* chore: put metrics in prometheus resp header too
2024-02-20 03:25:18 +00:00
fys
74bfb09195
feat: support cache for batch_get in CachedMetaKvBackend ( #3277 )
...
* feat: support cache for batch_get in CachedMetaKvBackend.
* add doc of CachedMetaKvBackend
* fix: cr
* fix: correct some words
* fix cr
2024-02-06 03:15:03 +00:00
Weny Xu
f82ddc9491
fix: fix MockInstance rebuild issue ( #3218 )
...
* fix: fix MockInstance rebuild issue
* chore: apply suggestions from CR
2024-01-24 07:52:47 +00:00
LFC
f81e37f508
refactor: make http server built flexibly ( #3225 )
...
* refactor: make http server built flexibly
* Apply suggestions from code review
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
* fix: resolve PR comments
* Fix CI.
---------
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
2024-01-24 03:45:08 +00:00
Weny Xu
d75cf86467
fix: only register region keeper while creating physical table ( #3223 )
...
fix: only register region keeper during create physical table
2024-01-23 09:42:32 +00:00
Ruihang Xia
31787f4bfd
feat!: switch prom remote write to metric engine ( #3198 )
...
* feat: switch prom remote write to metric engine
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* Apply suggestions from code review
Co-authored-by: dennis zhuang <killme2008@gmail.com >
* fix compile
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* read physical table name from url
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove physical table from header
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix merge error
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix format
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add with_metric_engine option to config remote write behavior
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* check parameter
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add specific config param
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* default with_metric_engine to true
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update UT
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: dennis zhuang <killme2008@gmail.com >
2024-01-22 14:48:28 +00:00
dennis zhuang
5e89472b2e
feat: adds parse options for SQL parser ( #3193 )
...
* feat: adds parse options for parser and timezone to scan request
* chore: remove timezone in ScanRequest
* feat: remove timezone in parse options and adds type checking to parititon columns
* fix: comment
* chore: apply suggestions
Co-authored-by: Yingwen <realevenyag@gmail.com >
* fix: format
---------
Co-authored-by: Yingwen <realevenyag@gmail.com >
2024-01-19 09:16:36 +00:00
niebayes
63205907fb
refactor: introduce common-wal to aggregate wal stuff ( #3171 )
...
* refactor: aggregate wal configs
* refactor: move wal options to common-wal
* chore: slim Cargo.toml
* fix: add missing crates
* fix: format
* chore: update comments
* chore: add testing feature gate for test_util
* fix: apply suggestions from code review
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
* fix: apply suggestions from code review
* fix: compiling
---------
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
2024-01-18 03:49:37 +00:00
niebayes
d020a3db23
chore: expose promql test to distributed instance ( #3176 )
2024-01-17 02:44:55 +00:00
LFC
93f28c2a37
refactor: make grpc service able to be added dynamically ( #3160 )
2024-01-15 04:33:27 +00:00
Ruihang Xia
0882da4d01
feat: support PromQL operations over the same metric ( #3124 )
...
* update sqlness result
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update ut cases
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* remove deadcode
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2024-01-11 23:07:17 +00:00
LFC
51a3fbc7bf
refactor: change how frontend grpc services are orchestrated ( #3134 )
2024-01-11 02:26:44 +00:00
fys
6e860bc0fd
feat: support grpc for otlp trace and metrics ( #3105 )
...
* feat: add grpc support for otlp trace and metrics
* cr: add some comment
* fix: ut
* fix: cr
2024-01-09 05:01:48 +00:00
LFC
ec43b9183d
feat: table route for metric engine ( #3053 )
...
* feat: table route for metric engine
* feat: register logical regions
* fix: open logical region (#96 )
---------
Co-authored-by: JeremyHi <jiachun_feng@proton.me >
2024-01-04 06:30:17 +00:00
ClSlaid
5c66ce6e88
chore: remove unnecessary result wrappings ( #3084 )
...
patch: remove unnecessary result wrappings
Signed-off-by: 蔡略 <cailue@bupt.edu.cn >
2024-01-03 10:20:33 +00:00
Weny Xu
611a8aa2fe
feat(tests-integration): add a naive region migration integration test ( #3078 )
...
* fix: fix heartbeat handler ignore upgrade candidate instruction
* fix: fix handler did not inject wal options
* feat: expose `RegionMigrationProcedureTask`
* feat(tests-integration): add a naive region migration test
* chore: apply suggestions from CR
* feat: add test if the target region has migrated
* chore: apply suggestions from CR
2024-01-03 07:12:59 +00:00
Weny Xu
128d3717fa
test(tests-integration): add a naive test with kafka wal ( #3071 )
...
* chore(tests-integration): add setup tests with kafka wal to README.md
* feat(tests-integration): add meta wal config
* fix(tests-integration): fix sign of both_instances_cases_with_kafka_wal
* chore(tests-integration): set num_topic to 3 for tests
* test(tests-integration): add a naive test with kafka wal
* chore: apply suggestions from CR
2024-01-02 09:05:20 +00:00
Weny Xu
d87ab06b28
feat: add kafka wal integration test utils ( #3069 )
...
* feat(tests-integration): add wal_config
* feat: add kafka wal integration test utils
2024-01-02 07:38:43 +00:00
AntiTopQuark
4460af800f
feat(TableRouteValue): add panic notes and type checks ( #3031 )
...
* refactor(TableRouteValue): add panic notes and type checks
* chore: add deprecate develop branch warning
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* add error defines and checks
* Update README.md
* update code format and fix tests
* update name of error
* delete unused note
* fix unsafe .expect() for region_route()
* update error name
* update unwrap
* update code format
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
Co-authored-by: Ruihang Xia <waynestxia@gmail.com >
2023-12-30 13:02:26 +00:00
dennis zhuang
11ae85b1cd
feat: adds information_schema.schemata ( #3051 )
...
* feat: improve information_schema.columns
* feat: adds information_schema.schemata
* fix: instance test
* fix: comment
2023-12-29 09:22:31 +00:00
LFC
7551432cff
refactor: merge standalone and metasrv table metadata allocators ( #3035 )
...
* refactor: merge standalone and metasrv table metadata allocators
* Update src/common/meta/src/ddl/table_meta.rs
Co-authored-by: niebayes <niebayes@gmail.com >
* Update src/common/meta/src/ddl/table_meta.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
---------
Co-authored-by: niebayes <niebayes@gmail.com >
Co-authored-by: Weny Xu <wenymedia@gmail.com >
2023-12-29 08:50:59 +00:00
LFC
eadde72973
chore: "fix: revert unfinished route table change" ( #3009 )
...
Revert "fix: revert unfinished route table change (#3008 )"
This reverts commit 8ce8a8f3c7 .
2023-12-27 02:40:59 +00:00
Ruihang Xia
8ce8a8f3c7
fix: revert unfinished route table change ( #3008 )
...
* Revert "refactor: hide `RegionRoute` behind `TableRouteValue` (#2989 )"
This reverts commit 1641fd572a .
* Revert "feat: MetricsEngine table route (part 1) (#2952 )"
This reverts commit 6ac47e939c .
2023-12-26 09:56:49 +00:00
Weny Xu
c902d43380
refactor(remote_wal): add StandaloneWalConfig ( #3002 )
...
* feat: integrate remote wal to standalone
* fix: test
* refactor: refactor standalone wal config
* chore: change default kafka port to 9092
* chore: apply suggestions from CR
---------
Co-authored-by: niebayes <niebayes@gmail.com >
2023-12-26 04:31:41 +00:00
niebayes
830a91c548
feat(remote_wal): implement topic allocation ( #2970 )
...
* chore: implement wal options allocator
* chore: implement round-robin topic selector
* feat: add shuffle to round-robin topic selector
* chore: implement kafka topic manager
* test: add tests for wal options allocator
* test: add wal provider to test config files
* test: leave todos for adding tests for remote wal
* fix: resolve review conversations
* fix: typo
2023-12-22 08:26:48 +00:00
Ning Sun
43f01cc594
feat: add a default internal schema ( #2974 )
2023-12-22 06:25:19 +00:00
LFC
6ac47e939c
feat: MetricsEngine table route (part 1) ( #2952 )
...
* refactor: make `TableRouteValue` an enum to add the variant of MetricsEngine table route
* fix: resolve PR comments
* Update src/common/meta/src/key/table_route.rs
Co-authored-by: Weny Xu <wenymedia@gmail.com >
---------
Co-authored-by: Weny Xu <wenymedia@gmail.com >
2023-12-20 07:31:59 +00:00
niebayes
839e653e0d
feat(remote_wal): add skeleton for remote wal related to meta srv ( #2933 )
...
* feat: introduce wal config and kafka config
* feat: introduce kafka topic manager and selector
* feat: introduce region wal options
* chore: build region wal options upon starting meta srv
* feat: integrate region wal options allocator into table meta allocator
* chore: add wal config to metasrv.example.toml
* chore: add region wal options map to create table procedure
* feat: augment region create request with wal options
* feat: augment DatanodeTableValue with region wal options map
* chore: encode region wal options upon constructing table creator
* feat: persist region wal options when creating table meta
* fix: sqlness test
* chore: set default wal provider to raft-engine
* refactor: refactor wal options
* chore: update wal options allocator
* refactor: rename region wal options to wal options
* chore: update usages of region wal options
* chore: add some comments to kafka
* chore: fill in kafka config
* test: add tests for serde wal config
* test: add tests for wal options
* refactor: refactor wal options allocator to enum
* refactor: store wal options into the request options instead
* fix: typo
* fix: typo
* refactor: move wal options map to region info
* refactor: refacto serialization and deserialization of wal options
* refactor: use serde_json to encode wal options
* chore: rename wal_options_map to region_wal_options
* chore: resolve some review comments
* fix: typo
* refactor: replace kecab-case with snake_case
* fix: sqlness and converage tests
* fix: typo
* fix: coverage test
* fix: coverage test
* chore: resolve some review conversations
* fix: resolve some review conversations
* chore: format comments in metasrv.example.toml
* chore: update import style
* feat: integrate wal options allocator to standalone mode
* test: add compatible test for OpenRegion
* test: add compatible test for UpdateRegionMetadata
* chore: remove based suffix from topic selector type
2023-12-19 12:43:47 +00:00
Ruihang Xia
6b8dbcfb54
chore: update toolchain to 20231219 ( #2932 )
...
* update toolchain file, remove unused feature gates
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix clippy
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* fix format
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update action file
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
* update to 12-19
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
---------
Signed-off-by: Ruihang Xia <waynestxia@gmail.com >
2023-12-19 07:24:08 +00:00
LFC
033a065359
refactor: make sequence bounded with max value ( #2937 )
...
* refactor: make sequence bounded with max value
(cherry picked from commit 3a8eba6f863327a96b617cd86ee2d39fac30abb2)
* fix: resolve PR comments
2023-12-18 07:05:28 +00:00