Skip to content

Commit 452e948

Browse files
cezarmoisevponomaryov
authored andcommitted
fix(ScyllaYaml): add tablets_mode_for_new_keyspaces configuration option
The configuration option was added in scylladb/scylladb#22273 It take precedence over `enable_tablets`
1 parent bf1bb85 commit 452e948

13 files changed

+14
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
append_scylla_yaml:
22
force_gossip_topology_changes: true
33
enable_tablets: false
4+
tablets_mode_for_new_keyspaces: 'disabled'
+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
append_scylla_yaml:
22
enable_tablets: true
3+
tablets_mode_for_new_keyspaces: 'enabled'
34
tablets_initial_scale_factor: 4

configurations/tablets_disabled.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
append_scylla_yaml:
22
enable_tablets: false
3+
tablets_mode_for_new_keyspaces: 'disabled'

docker/scylla-sct/entry.sh

+1
Original file line numberDiff line numberDiff line change
@@ -12,5 +12,6 @@ authorizer: 'CassandraAuthorizer'
1212
EOM
1313

1414
sed -e '/enable_tablets:.*/s/true/false/g' -i /etc/scylla/scylla.yaml
15+
sed -e '/tablets_mode_for_new_keyspaces:.*/s/enabled/disabled/g' -i /etc/scylla/scylla.yaml
1516

1617
/docker-entrypoint.py $*

docker/scylla-sct/entry_ssl.sh

+1
Original file line numberDiff line numberDiff line change
@@ -19,5 +19,6 @@ client_encryption_options:
1919
EOM
2020

2121
sed -e '/enable_tablets:.*/s/true/false/g' -i /etc/scylla/scylla.yaml
22+
sed -e '/tablets_mode_for_new_keyspaces:.*/s/enabled/disabled/g' -i /etc/scylla/scylla.yaml
2223

2324
/docker-entrypoint.py $*

sdcm/provision/scylla_yaml/scylla_yaml.py

+1
Original file line numberDiff line numberDiff line change
@@ -354,6 +354,7 @@ def set_authorizer(cls, authorizer: str):
354354
compaction_collection_items_count_warning_threshold: int = None # None
355355

356356
enable_tablets: bool = None # False, but default scylla.yaml for some versions (e.g. 6.0) override it to True
357+
tablets_mode_for_new_keyspaces: Literal['disabled', 'enabled', 'enforced'] = None # enabled
357358
force_gossip_topology_changes: bool = None # False
358359

359360
reader_concurrency_semaphore_cpu_concurrency: int = None

sdcm/utils/features.py

+2
Original file line numberDiff line numberDiff line change
@@ -83,5 +83,7 @@ def is_tablets_feature_enabled(node) -> bool:
8383
return True
8484
if scylla_yaml.dict().get("enable_tablets"):
8585
return True
86+
if scylla_yaml.dict().get("tablets_mode_for_new_keyspaces") in ["enabled", "enforced"]:
87+
return True
8688

8789
return False

test-cases/PR-provision-test-docker.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,4 @@ use_mgmt: false
1818

1919
append_scylla_yaml:
2020
enable_tablets: false # counters are not supported with tablets
21+
tablets_mode_for_new_keyspaces: 'disabled' # counters are not supported with tablets

test-cases/PR-provision-test.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -31,3 +31,4 @@ use_preinstalled_scylla: true
3131

3232
append_scylla_yaml:
3333
enable_tablets: false # counters are not supported with tablets
34+
tablets_mode_for_new_keyspaces: 'disabled' # counters are not supported with tablets

test-cases/longevity/longevity-aws-custom-d2-workload1-3dcs.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ append_scylla_yaml:
2626
# See: https://github.com/scylladb/scylladb/pull/21207
2727
enable_small_table_optimization_for_rbno: true
2828
enable_tablets: false
29+
tablets_mode_for_new_keyspaces: 'disabled'
2930

3031
nemesis_class_name: 'SisyphusMonkey'
3132
nemesis_seed: '029'

test-cases/longevity/longevity-aws-custom-d2-workload1-5dcs.yaml

+1
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,7 @@ append_scylla_yaml:
2626
# See: https://github.com/scylladb/scylladb/pull/21207
2727
enable_small_table_optimization_for_rbno: true
2828
enable_tablets: false
29+
tablets_mode_for_new_keyspaces: 'disabled'
2930

3031
nemesis_class_name: 'SisyphusMonkey'
3132
nemesis_seed: '007'

unit_tests/test_scylla_yaml.py

+1
Original file line numberDiff line numberDiff line change
@@ -409,6 +409,7 @@ def test_scylla_yaml(self):
409409
'workdir': None,
410410
'write_request_timeout_in_ms': None,
411411
'enable_tablets': None,
412+
'tablets_mode_for_new_keyspaces': None,
412413
'force_gossip_topology_changes': None,
413414
'reader_concurrency_semaphore_cpu_concurrency': None,
414415
}

upgrade_test.py

+1
Original file line numberDiff line numberDiff line change
@@ -236,6 +236,7 @@ def _upgrade_node(self, node, upgrade_sstables=True, new_scylla_repo=None, new_v
236236

237237
if self.params.get("enable_tablets_on_upgrade"):
238238
scylla_yaml_updates.update({"enable_tablets": True})
239+
scylla_yaml_updates.update({"tablets_mode_for_new_keyspaces": "enabled"})
239240
if self.params.get("enable_views_with_tablets_on_upgrade"):
240241
scylla_yaml_updates.update({"experimental_features": ["views-with-tablets"]})
241242

0 commit comments

Comments
 (0)