This repository has been archived by the owner on Feb 6, 2024. It is now read-only.
Releases: apache/incubator-horaedb-meta
Releases · apache/incubator-horaedb-meta
v1.2.7
What's Changed
- refactor: avoid routing tables returning errors due to incorrect metadata by @chunshao90 in #225
- chore: add version print by @ZuLiangWang in #227
- fix: add cluster state check by @ZuLiangWang in #203
- chore: ugprade the ceresdbproto by @ShiKaiWi in #229
- fix: wrong shard id when drop non-exist table by @ShiKaiWi in #230
- fix: drop partition table by @ZuLiangWang in #231
- chore: remove coverage by @jiacai2050 in #234
- feat: add diagnose/shards api by @chunshao90 in #235
- chore: remove useless code by @chunshao90 in #239
- feat: support drop partition table parallelly by @chunshao90 in #240
- chore: add some operation apis by @chunshao90 in #241
- refactor: http mod by @chunshao90 in #242
- improve: generate a more uniform distribution by @ShiKaiWi in #236
- fix: allow rebalance scheduler to run on the unstable cluster by @ShiKaiWi in #243
- feat: support external etcd by @chunshao90 in #238
- chore: refactor some code by @chunshao90 in #244
- feat: add deploy mode by @ZuLiangWang in #247
- feat: add least table shard picker by @ZuLiangWang in #248
- feat: support shard affinity by @ShiKaiWi in #245
- refactor: diagnose shards api by @chunshao90 in #246
- chore: use clusters in api endpoint by @jiacai2050 in #249
New Contributors
- @jiacai2050 made their first contribution in #234
Full Changelog: v1.2.5...v1.2.7
v1.2.5
Major Feature
- Support for recovering failed open tables without restarting CeresDB nodes in #218.
- Optimized the hash algorithm used for shard allocation to make shard more evenly distributed on nodes in #215.
- Added ETCD member-related APIs to support CeresMeta dynamic expansion and node replacement in #207.
What's Changed
- feat: add reopen shard scheduler by @ZuLiangWang in #218
- fix: fix codecov by @ZuLiangWang in #212
- feat: add list procedure api by @ZuLiangWang in #214
- feat: add ETCD member API by @ZuLiangWang in #207
- refactor: refactor api module by @ZuLiangWang in #220
- refactor: optimize hash node select algo by @ZuLiangWang in #215
- fix: remove gprc header error stack by @ZuLiangWang in #222
Full Changelog: v1.2.4...v1.2.5
v1.2.4
Major Feature
- Support open shard concurrently, in order to speed up the open of cluster's shards #205
What's Changed
- chore: update golangci-lint version by @baojinri in #196
- test: fix test update cluster view by @ZuLiangWang in #204
- fix: fix panic when shard is not assigned by @ZuLiangWang in #202
- feat: add flow limiter read interface by @baojinri in #197
- refactor: refactor http api module by @ZuLiangWang in #198
- chore: add nighty builder by @ZuLiangWang in #210
- refactor: support open shard concurrently by @ZuLiangWang in #205
Full Changelog: v1.2.2...v1.2.4
v1.2.2
Major Features
- Support for managing multiple
CeresDB
clusters through a singleCeresMeta
cluster
Bug Fix
- #171 Fix the problem with uneven distribution of tables
- #183 Fix the problem that
CeresMeta
etcd frequently timed out when theCeresDB
cluster was restarted in batches
What's Changed
- chore: add codecov.yml by @chunshao90 in #175
- feat: support multiple cluster by @ZuLiangWang in #172
- chore: add integration test by @ZuLiangWang in #177
- fix: mod zero by @chunshao90 in #171
- refactor: add pprof debug API by @ZuLiangWang in #184
- fix: add leader cache by @ZuLiangWang in #183
- refactor: error message in http api by @baojinri in #180
- fix: optimize sub table creation by @baojinri in #182
- refactor: refactor cluster interface by @ZuLiangWang in #185
- test: add unit tests by @ZuLiangWang in #178
- feat: add gRPC flow limit by @baojinri in #176
- refactor: error message by @baojinri in #189
- fix: remove test code by @baojinri in #190
- refactor: rename limiter api by @baojinri in #192
- refactor: compatible with topology persistence by @ZuLiangWang in #191
Full Changelog: v1.2.0...v1.2.2
v1.2.0
Upgrade Guide
NOTE: this guide is only used for upgrading CeresMeta v1.1.0 to CeresMeta v1.2.0, and ignore it if you want to deploy a brand new CeresMeta cluster with v1.2.0.
- We have modified the default data root directory of ETCD, so if you want to be compatible with the previous data, you need to manually specify the path of the ETCD root directory, which is consistent with the previous version. Specifically:
- Add the config section to your config file
storage-root-path = "/rootPath"
Major Features
- Support the new mechanism of failover and load balancing.
- #706 #853 implements the distributed locks for shard based on ETCD, and opening and closing of shards is only allowed with the shard lock held, and after that, data corruption caused by multiple shard leaders will be avoided completely;
- Support automatic failover of CeresDB nodes, that is to say, the service recovery can be handled automatically without any manual intervention;
- Support automatic load balance based on consistent hashing, which can ensure that shards are evenly distributed on each node of the cluster when the number of the cluster nodes increases or decreases;
What's Changed
- refactor: refactor cluster by @ZuLiangWang in #157
- refactor: refactor shard version check by @ZuLiangWang in #158
- feat: add health check api by @mrrtree in #159
- fix: fix update cluster view when shardinfos is empty by @ZuLiangWang in #160
- feat: add rebalanced shard scheduler by @ZuLiangWang in #162
- feat: add deploy mode by @ZuLiangWang in #163
- fix: fix get table of shards. by @ZuLiangWang in #164
- refactor: avoid frequent update of clusterVersion by @ZuLiangWang in #166
- fix: fix drop partition table by @ZuLiangWang in #167
- refactor: add schedule type by @ZuLiangWang in #168
- fix: fix compare result by @ZuLiangWang in #169
- fix: fix register node by @ZuLiangWang in #170
New Contributors
Full Changelog: v1.1.0...v1.2.0
v1.0.0
Major features
- Cluster Operation
- Support more cluster operations.
- Support HTTP request forwarding.
- Support split some tables in a shard into a new shard.
- Support for creating partition table when the number of sub tables is greater than shard.
- Refactor Code
- Refactor the organizational structure of the procedure file directory.
What's Changed
- docs: update example config by @chunshao90 in #128
- refactor: refactor create partition table procedure by @ZuLiangWang in #127
- feat: add etcd max txn ops config by @ZuLiangWang in #120
- feat: support drop partition table by @chunshao90 in #126
- feat: support forwarding http requests by @ZuLiangWang in #116
- refactor: replace reopen shard with open table by @ZuLiangWang in #129
- chore: beautify the http response by @chunshao90 in #133
- feat: store partition info in ceresmeta by @chunshao90 in #131
- chore: add code of conduct by @archerny in #135
- refactor: add some logs by @ZuLiangWang in #121
- chore: add dockerhub publish & adjust data directory by @ZuLiangWang in #137
- refactor: refactor the directory organization of procedure by @ZuLiangWang in #138
- fix: add node state check in transfer leader procedure & Support multi-node concurrent shard opening. by @ZuLiangWang in #134
Full Changelog: v1.0.0-alpha02...v1.0.0
v1.0.0-alpha02
What's Changed
- chore: add start config file by @ZuLiangWang in #117
- chore: add codecov by @chunshao90 in #118
- chore: workflows/check run on the workflow_dispatch event by @chunshao90 in #119
- feat: add create partition table procedure by @ZuLiangWang in #123
- chore: update ceresdbproto & adapter to partition info by @ZuLiangWang in #124
- feat: support alloc shard on same node by @ZuLiangWang in #125
Full Changelog: 1.0.0-alpha01...v1.0.0-alpha02
v1.0.0-alpha01
What's Changed
- feat: add data package in cluster by @chunshao90 in #90
- refactor: refactor storage of cluster meta data by @chunshao90 in #93
- fix: forward create/drop table request to leader by @ZuLiangWang in #96
- refactor: refactor cluster package by @chunshao90 in #98
- feat: add http server by @ZuLiangWang in #97
- feat: add transfer leader procedure by @ZuLiangWang in #99
- chore: bump ceresdbproto to the latest version by @archerny in #100
- chore: add toml config parser by @ZuLiangWang in #101
- fix: fix http server start by @ZuLiangWang in #102
- chore: add route http interface & fix some bugs by @ZuLiangWang in #104
- chore: add env variable config parser by @ZuLiangWang in #103
- fix: fix shard view copy table by @ZuLiangWang in #108
- fix: fix load schema table mapping & logger initialization by @ZuLiangWang in #106
- chore: add some debug info when cluster load metadata by @chunshao90 in #113
- test: modify TestCreateAndDropTable test by @chunshao90 in #109
- feat: parse config from env by @ZuLiangWang in #112
- fix: remove dropTable rollback when createTable failed by @chunshao90 in #105
- feat: expose some operation http api by @ZuLiangWang in #107
- refactor: update pb definition by @ZuLiangWang in #114
- feat: add split procedure by @ZuLiangWang in #111
New Contributors
Full Changelog: v0.4.0...1.0.0-alpha01
v0.4.0
What's Changed
- chore: Refactor readme by @Rachelint in #50
- fix: fix manager_test & manager by @baojinri in #37
- chore: update golang to 1.19.1 by @ShiKaiWi in #53
- refactor: refactor meta storage by @baojinri in #51
- refactor: Scan util method for etcdclient by @ShiKaiWi in #54
- refactor: attach call stack to coderr by @ShiKaiWi in #55
- feat: add shard fsm definition by @ZuLiangWang in #52
- chore: run go mod tidy by @chunshao90 in #59
- feat: define procedure interface by @chunshao90 in #58
- feat: add check-license script by @chunshao90 in #60
- feat: set warningCode = 1 in revive config by @chunshao90 in #65
- feat: add shard fsm implementation by @ZuLiangWang in #61
- feat: add procedure storage implementation by @ZuLiangWang in #68
- feat: add shardID allocator by @ZuLiangWang in #56
- feat: update ceresdbproto and impl EventDispatch by @chunshao90 in #71
- feat: add scatter procedure by @ZuLiangWang in #69
- feat: add transfer leader procedure by @ZuLiangWang in #67
- feat: upgrade ceresdbproto to latest version by @chunshao90 in #77
- feat: add CreateTableProcedure by @chunshao90 in #73
- feat: add DropTableProcedure by @chunshao90 in #78
- feat: add procedure manager by @ZuLiangWang in #72
- chore: upgrade ceresdbproto to latest version by @chunshao90 in #79
- ci: run UT in ci by @ShiKaiWi in #81
- feat: impl create and drop table service by @chunshao90 in #84
- fix: fix some scatter error by @ZuLiangWang in #83
- feat: add rebuild topology by @ZuLiangWang in #75
- fix: fix some bugs by testing with ceresdb by @chunshao90 in #85
- feat: support manage registered nodes by @ShiKaiWi in #86
- feat: add procedure scheduler by @ZuLiangWang in #80
- fix: update the cache when create shard topology by @ShiKaiWi in #87
New Contributors
- @Rachelint made their first contribution in #50
- @ZuLiangWang made their first contribution in #52
Full Changelog: v0.3.0...v0.4.0
v0.3.0
Overview
This is the first release version of CeresMeta, which supports the deployment of CeresDB 0.3.0 cluster version.
Features
- Support management of CeresDB metadata
- Support to handle heartbeats from CeresDB instances
- Provide gRPC services for CeresDB, including allocation of table id and schema id, routing information, cluster topology etc
- Support to deploy CeresMeta in cluster mode