feat: support per table memtable options (#3524)

* feat: add memtable builder to region

* refactor: rename memtable_builder in worker to default_memtable_builder

* fix: return error instead of using default compaction options

Support deserializing memtable and compaction options from the option
map

* feat: optional memtable options

* feat: add MemtableBuilderProvider to create builders

* feat: change default memtable and skip deserializing dedup

* chore: update test and comment

* chore: test invalid type

* feat: metric engine use new memtable manually

* feat: expose more memtable configs

* feat: add memtable options to valid option list

* test: add test

* test: sqlness test

* chore: serde workspace

* chore: remove comments
This commit is contained in:
Yingwen
2024-03-19 16:50:10 +08:00
committed by GitHub
parent fa0f3555d4
commit 641592644d
22 changed files with 337 additions and 55 deletions

View File

@@ -787,11 +787,7 @@ mem_threshold_on_create = "64.0MiB"
intermediate_path = ""
[datanode.region_engine.mito.memtable]
type = "experimental"
index_max_keys_per_shard = 8192
data_freeze_threshold = 131072
dedup = true
fork_dictionary_bytes = "1GiB"
type = "time_series"
[[datanode.region_engine]]