Merge 'Wire tablet into compaction group' from Raphael "Raph" Carvalho
Compaction group is the data plane for tablets, so this integration allows each tablet to have its own storage (memtable + sstables). A crucial step for dynamic tablets, where each tablet can be worked on independently. There are still some inefficiencies to be worked on, but as it is, it already unlocks further development. ``` INFO 2023-07-27 22:43:38,331 [shard 0] init - loading tablet metadata INFO 2023-07-27 22:43:38,333 [shard 0] init - loading non-system sstables INFO 2023-07-27 22:43:38,354 [shard 0] table - Tablet with id 0 present for ks.cf INFO 2023-07-27 22:43:38,354 [shard 0] table - Tablet with id 2 present for ks.cf INFO 2023-07-27 22:43:38,354 [shard 0] table - Tablet with id 4 present for ks.cf INFO 2023-07-27 22:43:38,354 [shard 0] table - Tablet with id 6 present for ks.cf INFO 2023-07-27 22:43:38,428 [shard 1] table - Tablet with id 1 present for ks.cf INFO 2023-07-27 22:43:38,428 [shard 1] table - Tablet with id 3 present for ks.cf INFO 2023-07-27 22:43:38,428 [shard 1] table - Tablet with id 5 present for ks.cf INFO 2023-07-27 22:43:38,428 [shard 1] table - Tablet with id 7 present for ks.cf ``` Closes #14863 * github.com:scylladb/scylladb: Kill scylla option to configure number of compaction groups replica: Wire tablet into compaction group token_metadata: Add this_host_id to topology config replica: Switch to chunked_vector for storing compaction groups replica: Generate group_id for compaction_group on demand
This commit is contained in:
@@ -334,7 +334,7 @@ token_metadata::tokens_iterator& token_metadata::tokens_iterator::operator++() {
|
||||
}
|
||||
|
||||
host_id token_metadata::get_my_id() const {
|
||||
return get_host_id(utils::fb_utilities::get_broadcast_address());
|
||||
return get_topology().get_config().this_host_id;
|
||||
}
|
||||
|
||||
inline
|
||||
|
||||
@@ -161,6 +161,7 @@ class topology {
|
||||
public:
|
||||
struct config {
|
||||
inet_address this_endpoint;
|
||||
host_id this_host_id;
|
||||
endpoint_dc_rack local_dc_rack;
|
||||
bool disable_proximity_sorting = false;
|
||||
|
||||
@@ -177,6 +178,10 @@ public:
|
||||
public:
|
||||
const config& get_config() const noexcept { return _cfg; }
|
||||
|
||||
void set_host_id_cfg(host_id this_host_id) {
|
||||
_cfg.this_host_id = this_host_id;
|
||||
}
|
||||
|
||||
const node* this_node() const noexcept {
|
||||
return _this_node;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user