Releases: apache/horaedb
Releases · apache/horaedb
v1.0.0
Major features
- Support prometheus remote storage protocol
- Query performance improvement and resource control
- Replace bloom filter with XOR8 filter
- Add timeout for query
- Add route cache in remote engine client in table partition
- Support locate partition for
in
sql expression in table partition
- Internal refactor
- Refactor sst module for better extensibility
- Refactor manifest module
- Refactor grpc storage service
- Add intergration test for cluster mode
- Bug fix
- Fix sql identifier case-sensibility
- Correct the order of sync meta snapshot and clean logs in wal on kafka
- Update flushed_sequence_num after compaction
- Fix varbinary type error
What's Changed
- Revert "refactor: separate object store from parquet sst async reader… by @ShiKaiWi in #536
- chore: add version in PartitionInfo by @chunshao90 in #537
- feat: support drop partition table by @chunshao90 in #532
- docs: wrong schema in the static routing example config by @ShiKaiWi in #543
- chore(deps): bump tokio from 1.22.0 to 1.24.1 by @dependabot in #546
- chore(deps): bump lz4-sys from 1.9.3 to 1.9.4 by @dependabot in #545
- docs: update example cluster config by @chunshao90 in #548
- avoid routing for non-existent table by @ShiKaiWi in #551
- fix: Revert "feat: support bloom filter in hybrid format (#479)" by @jiacai2050 in #549
- feat: add open_table_on_shard and close_table_on_shard in meta_event_service by @chunshao90 in #542
- feat: disable do_snapshot when recover table data by @chunshao90 in #550
- feat: use arrow-ipc to communicate between remote server and client by @jiacai2050 in #552
- feat: add timeout for query by @jiacai2050 in #539
- Supplement ceresdb docs by @MachaelLee in #555
- support schema header for http/grpc service by @ShiKaiWi in #544
- feat: add cached router for remote engine client by @Rachelint in #547
- chore: add some metrics for PartitionTable and grpc service by @chunshao90 in #560
- fix: truncated error message by @jiacai2050 in #564
- chore: change the prefix of sub partition table name to "__" by @chunshao90 in #566
- feat: pass partition info to ceresmeta when create table by @chunshao90 in #568
- chore: add code of conduct by @archerny in #575
- chore: add llvm cov codecov by @chunshao90 in #574
- feat: support querying partition tables through select in by @ZuLiangWang in #530
- feat: add permission check for sub tables in table partition by @Rachelint in #541
- feat: improve the release profile and add release-slim profile by @ShiKaiWi in #580
- feat: add some logs for reading sst by @ShiKaiWi in #581
- feat: merge breaking changes to the main branch by @ShiKaiWi in #583
- chore: update the roadmap by @archerny in #584
- chore(deps): bump git2 from 0.14.2 to 0.16.1 by @dependabot in #588
- chore(deps): bump bumpalo from 3.10.0 to 3.12.0 by @dependabot in #586
- chore: add codecov.yml to ignore some dirs that don't need code coverage by @chunshao90 in #591
- feat: implement prom remote storage api by @jiacai2050 in #578
- feat restrict partition num by @Rachelint in #598
- chore: remove docs by @jiacai2050 in #599
- chore(deps): bump warp from 0.3.2 to 0.3.3 by @dependabot in #602
- fix: re-enable SingleDistinctToGroupBy by @jiacai2050 in #594
- chore: fix missing deps in CI by @jiacai2050 in #603
- chore: make nightly image name readable by @jiacai2050 in #604
- fix: remove unnecessary type conversion in MysqlWorker by @Huachao in #606
- chore: remove lto by @jiacai2050 in #609
- feat: print error in datanode by @Rachelint in #613
- chore(deps): bump tokio from 1.24.1 to 1.25.0 by @dependabot in #610
- feat: prevent from pushing down filter of non primary key or ts key by @Rachelint in #611
- test: add testcase for timestamp not in primary key by @jiacai2050 in #619
- feat: adapt new protocol by @ShiKaiWi in #585
- feat: make bloom filter optional on column level by @ShiKaiWi in #615
- primary keys defaults to tsid, timestamp by @jiacai2050 in #621
- chore: add logs by @jiacai2050 in #614
- feat: Upgrade to Datafusion 17 by @chunshao90 in #601
- fix: avoid some unwrap with result by @chunshao90 in #624
- feat: store manifest to oss by @ShiKaiWi in #607
- chore: rename meta module to manifest in analytic crate by @ShiKaiWi in #625
- feat: add BoxError trait to simplify the way to create generic error by @Rachelint in #627
- test: add test for issue 302 by @chunshao90 in #618
- chore: remove useless code by @ShiKaiWi in #630
- chore: modify wal config by @Rachelint in #629
- chore: run ci in parallel by @jiacai2050 in #632
- feat: add cluster mode system table by @ZuLiangWang in #464
- feat: use ConfigOptions to transfer custom settings by @chunshao90 in #639
- docs: udpate readme-cn by @MachaelLee in #600
- feat: replace bloom with xor8 filter by @jiacai2050 in #631
- chore: refacor ceresdb config by @chunshao90 in #640
- feat: support request context by @jiacai2050 in #636
- feat: allow mapping between sequence and kafka offset incomplete by @Rachelint in #642
- fix: correct the order of sync meta snapshot and clean logs in wal on kafka by @Rachelint in #643
- chore: move
proto
toceresdbproto
repo by @chunshao90 in #644 - feat: map shard id to region id in manifest by @Rachelint in #645
- fix: sql identifier default to case-sensitive by @jiacai2050 in #641
- fix: update flushed_sequence_num after compaction by @ShiKaiWi in #651
- refactor: adjust configuration by @ShiKaiWi in #649
- feat: replace column index with id when persisting schema in manifest by @Rachelint in #652
- refactor: reuse client in manifest wal and normal wal by @Rachelint in #656
- fix: fix varbinary type error by @ZuLiangWang in #653
- refactor: use enum instead of version for encoding format in pb by @ShiKaiWi in #655
- chore: fix some clippy errors & add clippy.toml by @ShiKaiWi in #658
- refactor: remove encoder method from WalManager by @ShiKaiWi in #661
- chore: add integration test for cluster mode. by @ZuLiangWang in #646
- feat: Support DataTypes of Date and Time by @MachaelLee in #657
- chore: normalize http api by @jiacai2050 in #659
- fix: xor filter build by @jiacai2050 in #666
- chore: fix CI upload log by @ZuLiangWang in #667
- feat: remove avro encoder by @chunshao90 in #660
- feat: remove status in readme by @MachaelLee in #671
- chore: add rustc version by @jiacai2050 in #672
- test: add partition_table test in integration_test by @chunshao90 in #668
- chore: bump client by @jiacai2050 in #673
- chore: rename some files and configuration by @chunsh...
v1.0.0-alpha02
Major features
- Table Partition
- Support key partition(MySQL-like syntax).
- Implement
PartitionTable
to support query and write for partitioned tables.
- Improve query performance
- Add disk based object store cache. (unstable)
- Implement parallel
get_byte_ranges
for ObjectStoreReader. - Scan row groups in one sst file parallelly.
- Support bloom filter in hybrid format.
- Support
MergeIterator
to pull data concurrently.
- Support auto query forwarding for grpc.
- Normalize the case of SQL and make clear that all SQL cases are sensitive.
- Chore
- Migrate current harness tests to sqlness. by @dust1
- Support memory usage limit on background compaction.
- Make the bloom filter optional in sst meta.
- Bug fix
- Fix wrong primary key when define tsid and timestamp key as primary key.
- Fix wrong path in the result from StoreWithPrefix.
- Fix lru-weighted-cache` memory leak.
- Fix some bugs in background compaction.
- Fix wrong profile output os path for heap profiling.
What's Changed
- feat: convert table name to lowercase when not quoted by @jiacai2050 in #444
- fix: object_store config by @jiacai2050 in #443
- feat: add disk based object store cache by @jiacai2050 in #420
- feat: add dynamic setting log level by @ZuLiangWang in #445
- feat: add disk cache value crc by @jiacai2050 in #447
- refactor: make http max body size configurable and modify default value by @Rachelint in #451
- chore: use default value for StorageOptions by @jiacai2050 in #455
- chore: modify some config in workflows by @chunshao90 in #457
- fix: wrong primary key when define tsid and timestamp key as primary key by @ShiKaiWi in #453
- feat: impl parallel get_byte_ranges for ObjectStoreReader by @chunshao90 in #450
- feat: convert table name to quoted style by @Rachelint in #454
- refactor: remove
enable_tsid_primary_key
by @ShiKaiWi in #459 - chore: bump oss sdk by @jiacai2050 in #458
- feat: make rocksdb wal compatible with other distributed implementation by @Rachelint in #460
- fix: kill ceresdb-server if run harness failed by @ShiKaiWi in #461
- feat: support prefix for object store by @ShiKaiWi in #463
- fix: wrong path in the result from StoreWithPrefix by @ShiKaiWi in #465
- feat: make initializing of buffered streams in
MergeIterator
concurrent by @Rachelint in #466 - chore: add metrics oss by @chunshao90 in #478
- chore: bump oss sdk by @ZuLiangWang in #475
- feat: support memory usage limit on background compaction by @ShiKaiWi in #476
- fix: lru-weighted-cache mem leak by @jiacai2050 in #480
- chore: support Cargo.toml format check by @ShiKaiWi in #481
- feat: support bloom filter in hybrid format by @Rachelint in #479
- fix: compact table in background scheduler by @jiacai2050 in #482
- fix: wrong profile output os path for heap profiling by @ShiKaiWi in #484
- feat: add max_input_sstable_size by @jiacai2050 in #483
- feat: scan row groups in one sst file parallelly by @Rachelint in #474
- feat: migrate current harness tests to sqlness by @dust1 in #473
- feat: make the bloom filter optional in sst meta by @ShiKaiWi in #488
- feat: support store with readonly cache by @ShiKaiWi in #490
- feat: support ignore bloomfilter when compaction by @ShiKaiWi in #491
- fix: remove EncodingWriter by @jiacai2050 in #493
- feat: support create partition table by @chunshao90 in #485
- feat: support parsing partition table creating by @Rachelint in #487
- feat: support query limit by rule by @ShiKaiWi in #494
- chore: adjust usage of sst type by @ShiKaiWi in #499
- feat: introduce ObjectStorePicker to replace the two object stores by @ShiKaiWi in #496
- feat: define remote table engine trait by @Rachelint in #502
- feat: define partition rule trait by @Rachelint in #501
- refactor: separate object store from parquet sst async reader by @ShiKaiWi in #503
- refactor: recovery in standalone mode by @Rachelint in #414
- feat: support parse key partition by @ShiKaiWi in #506
- chore: define remote_engine grpc service by @chunshao90 in #505
- feat: impl key partition rule by @Rachelint in #507
- feat: auto forward query for grpc by @ShiKaiWi in #511
- feat: impl remote_engine grpc service by @chunshao90 in #508
- feat: Impl remote sdk by @Rachelint in #509
- feat: upgrade sqlness to latest version by @jiacai2050 in #517
- feat: update ceresdb proto & adapter to partition info by @ZuLiangWang in #515
- fix: fix conversion by avro by @Rachelint in #519
- fix: fix convert record batch by @ZuLiangWang in #521
- feat: impl PartitionTable by @chunshao90 in #512
- fix: fix partition table affected_rows by @chunshao90 in #522
- chore: add more context for query log by @jiacai2050 in #523
- chore: bump sqlness to 0.1.1 by @jiacai2050 in #524
- fix: fix integration test's bad case by @Rachelint in #527
Full Changelog: v1.0.0-alpha01...v1.0.0-alpha02
v1.0.0-alpha01
Major features
- Improve query performance
- Utilize the bloom filter stored in the sst meta data to do filtering on the row groups according to the provided predicate
- Refactor sst cache based on weighted LRU.
- Add a new async parquet reader.
- Support
get_range
api in aliyun oss to avoid OOM when sst is large. - Add memory based cache for object store.
- Improve CeresDB cluster mode
- Implement distributed wal based on kafka.(unstable)
- Implement expansion and transferLeader control with ceresmeta.(unstable)
- Refactor cluster metadata management in ceresemta.
- Bug fix
- Fix some bugs in WAL on OBKV.
- Fix encoding bug in hybrid storage format.
- Correct the order of the columns to be consistent with the order in which the user created the table. by @dust1
- SDK
- Release ceresdb-golang-client
- Replace grpc-io with tonic in ceresdb-rust-client
What's Changed
- chore: fix error message when table is not found by @ShiKaiWi in #348
- docs: Table operation doc by @MachaelLee in #318
- fix: adopt new parquet api by @jiacai2050 in #351
- refactor: utilize datafuison to support filter before merge procedure by @ygf11 in #326
- Refactor replace protobuf with prost by @ShiKaiWi in #352
- feat: region meta in wal manager on kafka by @Rachelint in #345
- docs: proposal of roadmap by @archerny in #356
- feat: add async parquet reader by @jiacai2050 in #355
- feat: encoding in wal's message queue impl. by @Rachelint in #358
- feat: add tools sst-convert by @jiacai2050 in #361
- fix: apply missing filtering on parquet reader by @ShiKaiWi in #360
- docs: update dynamic cluster mode doc by @ZuLiangWang in #357
- feat: replace ParquetExec with ParquetRecordBatchStream by @jiacai2050 in #368
- feat: region in wal's message queue impl. by @Rachelint in #362
- feat: support equal pruner by @ShiKaiWi in #372
- feat: add block list by @MachaelLee in #359
- feat: enhancement to mq's kafka implementation by @Rachelint in #375
- fix: add ignore to test on message queue's kafka implementation. by @Rachelint in #377
- fix:Disallow defining timestamp key column as Tag column by @QuintinTao in #374
- feat: add table id to
LogEntry
by @Rachelint in #379 - feat: add bloom filter when write sst by @jiacai2050 in #370
- feat: support like syntax in show tables statement by @QuintinTao in #331
- feat: support filter_row_groups by EqPruner by @ShiKaiWi in #380
- refactor: build row groups from record batch stream by @ShiKaiWi in #381
- refactor: show tables by @jiacai2050 in #382
- refactor: wal unit tests. by @Rachelint in #387
- feat: filter row groups by bloom filter by @ShiKaiWi in #383
- feat: implement region recovery by @Rachelint in #385
- feat: read all bytes out before do async bench by @jiacai2050 in #390
- feat: meta cache for both custom and parquet metadata by @ShiKaiWi in #392
- feat: sst-convert support convert to hybrid format by @jiacai2050 in #398
- feat: support get_range in aliyun oss by @ShiKaiWi in #395
- refactor: support multiple writing in a specific table by @Rachelint in #393
- fix: add meta client timeout by @ZuLiangWang in #399
- chore: update obkv-client to latest version by @chunshao90 in #401
- fix: wrong cargo lock by @ShiKaiWi in #405
- feat: correct column order by @dust1 in #340
- chore: update the ceresdbproto to latest by @ShiKaiWi in #406
- chore: remove manual installation of protoc by @ShiKaiWi in #407
- feat: refacor existing wal implementations to support scanning logs of shard by @Rachelint in #400
- chore: bump client in test harness by @jiacai2050 in #409
- docs: update http api by @jiacai2050 in #410
- test: add case sensitive demo by @jiacai2050 in #411
- feat: add memory based cache for object store by @jiacai2050 in #415
- feat: Impl wal on mq namespace by @Rachelint in #404
- feat: Impl wal on mq setup by @Rachelint in #416
- fix: cleaner bugs of wal on obkv by @Rachelint in #418
- feat: replay from flushed sequence by @Rachelint in #423
- feat: make manifest operations more configurable by @Rachelint in #424
- feat: setup MemCacheStore by @jiacai2050 in #421
- docs: fix broken conventional commit document link(#429) by @Huachao in #430
- fix: fix grpc service metrics by @chunshao90 in #431
- fix: purging buckets in initializing bug by @Rachelint in #432
- fix: load last sequence in obkv wal by @Rachelint in #434
- fix: drop bug of wal on mq, can't not drop runtime by @Rachelint in #433
- fix: hybrid storage encode bug in multi record batch by @chunshao90 in #426
- chore: add logs about replaying by @Rachelint in #438
- chore: return schema not found when schema not exists by @chunshao90 in #439
- refactor: manifest wal config by @Rachelint in #437
- fix: bug in distributed wal(obkv, kafka) by @Rachelint in #422
- chore: bump version to 1.0.0-alpha01 by @jiacai2050 in #440
New Contributors
- @MachaelLee made their first contribution in #318
- @ZuLiangWang made their first contribution in #357
- @Huachao made their first contribution in #430
Full Changelog: v0.4.0...v1.0.0-alhpa01
v0.4.0
Major features
- Improve CeresDB cluster mode
- Refactor the
Catalog
andCluster
module for better interaction with CeresMeta - Refactor the create/drop table procedure
- Support open/close shards on the ceresdb-server controlled by CeresMeta
- Refactor the
- Support default value option of column by @ygf11
- Replace grpc-io with tonic
- Upgrade to datafusion 12 and arrrow 23
- Improve the CI
- Support nightly benchmark with TSBS
- Reduce the size of CeresDB binary compiled with
release profile
- Fix the random failure in the integration tests
- Bug fix
- Avoid extra flushes when triggering one flush on table by @dust1
What's Changed
- refactor: remove
SchemaIdAlloc
andTableIdAlloc
by @waynexia in #238 - chore: remove stale docs by @waynexia in #239
- chore: correct integration test's dir by @waynexia in #242
- fix:fix license check by @chunshao90 in #243
- fix: flush of one table might be triggered multiple times by @dust1 in #236
- chore: fix submodule init by @ShiKaiWi in #244
- feat: add scan batch size options by @jiacai2050 in #248
- feat: primary key definition support specify tsid column by @jiacai2050 in #254
- refactor: use TableManager to implement
CatalogManager
andSchemaManager
by @waynexia in #260 - feat: collapsible columns supports variable length type by @chunshao90 in #241
- feat: base implementation of default value by @ygf11 in #246
- feat: add tsbs CI by @jiacai2050 in #264
- fix: null buffer assert by @jiacai2050 in #262
- feat: Implement some cluster commands by @waynexia in #265
- feat: persist collapsible info in parquet meta_data by @chunshao90 in #261
- chore: update parquet-testing by @chunshao90 in #266
- test: make harness test stable by @ShiKaiWi in #270
- chore: Upgrade to datafusion 12 & arrow 23 by @chunshao90 in #269
- feat: replace grpcio with tonic by @ShiKaiWi in #267
- chore: make use of workspace dependencies by @ShiKaiWi in #274
- build: fix test_panic_hook UT by @ShiKaiWi in #275
- docs: update example config for static deployment by @ShiKaiWi in #276
- test: add test case upgraded arrow&datafusion by @chunshao90 in #272
- docs: update complie and run chapter by @chunshao90 in #281
- feat: create schema in static routing by @chunshao90 in #285
- chore: adapt to latest ceresdbproto by @ShiKaiWi in #286
- refactor: remove event handling from cluster by @ShiKaiWi in #289
- feat: enhance sql handle, accept both json and text request by @jiacai2050 in #287
- feat: support flush tables periodically by @chunshao90 in #290
- chore: fix CI cache key, release mode should not mix with debug by @jiacai2050 in #292
- feat: support meta event service by @ShiKaiWi in #293
- feat: bump object store to 0.5.1, same with datafusion by @jiacai2050 in #296
- feat: support default value option of column like mysql by @ygf11 in #278
- feat: remove cluster catalog and refactor volatile catalog by @ShiKaiWi in #295
- refactor: modify exist wal by @Rachelint in #288
- chore: rename ShardTables to TablesOfShard by @ShiKaiWi in #300
- ci: support check disk quota by @ShiKaiWi in #301
- feat: add TabelCreator/TableDroper for executing create/drop table by @ShiKaiWi in #303
- fix: avoid running blocked-on task when building meta client by @ShiKaiWi in #305
- feat: support open&close shards by @ShiKaiWi in #307
- refactor: centralize the logic of choosing worker by @QuintinTao in #311
- chore: support set log file when running test harness by @jiacai2050 in #314
- test: set correct exit code for test harness by @jiacai2050 in #319
- feat: do create drop table by @ShiKaiWi in #310
- chore: minimize release binary size by @chunshao90 in #322
- feat: impl create drop table service by @ShiKaiWi in #323
- build: set correct version and let member packages inherit it by @archerny in #325
- chore: keep SQL original ident by @jiacai2050 in #328
- feat: add async inner to
BatchLogIteratorAdapter
by @Rachelint in #320 - chore: add quick release profile by @jiacai2050 in #330
- feat: separate status code between storage service and meta event service by @ShiKaiWi in #332
- fix: use right table manipulator when setup by @ShiKaiWi in #333
- feat: message queue and its kafka impl by @Rachelint in #306
- refactor: make mq interface simpler. by @Rachelint in #337
- fix: make open shard idempotent by @ShiKaiWi in #338
- fix: add missing version for meta request by @ShiKaiWi in #339
New Contributors
- @QuintinTao made their first contribution in #311
Full Changelog: v0.3.1...v0.4.0
v0.3.0
Major features
- Implement hybrid format. Check document below to see how to use
- Implement distributed cluster
What's Changed
- build(ci): 🔨 not run the build and push CI on forks by @zwpaper in #148
- build(ci): Test docker image build by @zwpaper in #150
- build(image): 🔨 replace entrypoint with bash, drop supervisor by @zwpaper in #152
- chore: Add build guidance for mac users by @tianlinzx in #169
- chore: add docker hub description workflow by @jiacai2050 in #130
- chore: add function tests by @Rachelint in #219
- chore: bump rust toolchain edition to 2021 by @waynexia in #180
- chore: bump sqlparser to 0.19 by @Rachelint in #172
- chore: change GH issue template to yaml format for better experience by @waynexia in #181
- chore: check Cargo.lock in CI by @jiacai2050 in #223
- chore: fix some grammar errors in docs by @ShiKaiWi in #200
- chore: remove
components/tracing
andcomponents/tracing-example
by @waynexia in #184 - chore: switch datafusion fork by @waynexia in #203
- chore: update slog-global dep to https://github.com/tikv/slog-global by @ShiKaiWi in #195
- chore: update the async_trait used by wal to 0.1.53 by @ShiKaiWi in #199
- docs: 🔨 fix slack dead link by @zwpaper in #141
- docs: Minor Grammar and Concision Changes in README.md by @jakemcf22 in #142
- docs: Update user guide summary by @jiacai2050 in #149
- docs: add data model in user guide by @chunshao90 in #132
- docs: add integration test section to
CONTRIBUTING.md
by @waynexia in #160 - docs: add quick start by @jiacai2050 in #133
- docs: add sql chapter for user guide by @waynexia in #136
- docs: add user guide workflow to generate html pages by @jiacai2050 in #137
- docs: fix build dir by @jiacai2050 in #197
- docs: improve options section by @jiacai2050 in #222
- docs: move architecture to user-guide by @jiacai2050 in #186
- docs: update Roadmap.md by @waynexia in #176
- docs: user guide about static routing by @ShiKaiWi in #134
- feat: Simplify SQL syntax that specifies timestamp key column by @dust1 in #140
- feat:
RoleTable
trait andLeaderTable
implementation by @waynexia in #188 - feat:
WalReplicator
skeleton implementation by @waynexia in #179 - feat: add new table_option storage format by @jiacai2050 in #218
- feat: add wal write benchmark by @ygf11 in #178
- feat: meta client supports route_tables by @ShiKaiWi in #214
- feat: persist
AlterSchema
andAlterOptions
to data WAL by @waynexia in #166 - feat: read hybrid format by @jiacai2050 in #207
- feat: read hybrid format by @jiacai2050 in #208
- feat: setup in different deployment mode by @ShiKaiWi in #190
- feat: support double quoted string. by @Rachelint in #196
- feat: support route in cluster mode by @ShiKaiWi in #215
- feat: write hybrid storage format by @jiacai2050 in #185
- feat: support to route for missing tables by @ShiKaiWi in #221
- fix: ci cache dependencies by @jiacai2050 in #193
- fix: deadlock when reconnect heartbeat channel by @ShiKaiWi in #217
- fix: insert negative number value by @ShiKaiWi in #212
- fix: select single quoted literal string. by @Rachelint in #173
- fix:select system.public.tables will return error by @dust1 in #174
- refactor: avoid validation for table constraints during parse by @ShiKaiWi in #164
- refactor: build Payload in encode_batch for LogBatchEncoder by @ygf11 in #209
- refactor: enhance cluster module based on meta_client_v2 by @ShiKaiWi in #100
- refactor: make read_batch object safe in WalManager by @ygf11 in #119
- refactor: make write method object safe in WalManager by @ygf11 in #159
- refactor: remove Meta and Wal type params in Instance by @ygf11 in #163
- refactor: remove old meta_client crate by @ShiKaiWi in #205
- refactor: replace ColumnOption::DialectSpecific with ColumnOption::Comment by @baojinri in #167
- refactor: store
SpaceId
andTableId
inTableImpl
by @waynexia in #202 - refactor: try to replace dynamic-dispatch with pre-code in wal write by @ygf11 in #189
- refactor: volatile implementation for catalog by @ShiKaiWi in #157
New Contributors
- @zwpaper made their first contribution in #141
- @jakemcf22 made their first contribution in #142
- @tianlinzx made their first contribution in #169
- @Rachelint made their first contribution in #172
- @baojinri made their first contribution in #167
Full Changelog: v0.2.0...v0.3.0
v0.2.0
Overview
In the v0.2.0 version, CeresDB implemented a static distributed deployment solution and completed some preparatory work for a cloud-native distributed cluster solution.
In addition, related documents have been improved to facilitate developers to use and understand CeresDB.
Features
- Supports Aliyun OSS #20
- WAL implementation based on OBKV #62
- Distributed version supports static topology(only supports routing in grpc protocol)
- Supports MySQL communication protocol #56
- Improve the integration testing framework #86
Thanks
@dust1 @ygf11 @messense @gogim1 @li-jin-gou @infdahai @VirrageS