mirror of
https://github.com/scylladb/scylladb.git
synced 2026-04-20 00:20:47 +00:00
The test test_service_level_metric_name_change was originally introduced to serve as a regression test for scylladb/scylla-enterprise#4912. Before the fix, some per-scheduling-group metrics would not get adjusted when the scheduling group gets renamed (which does happen for SL-managed scheduling groups) and it would be possible to attempt to register metrics with the same set of labels, resulting in an error. However, in scylladb/scylla-enterprise#4764, another bug was fixed which affected the test. Before a service level is created, a "test" scheduling group can be created by service level controller if it is unsure whether it is allowed to create more scheduling groups or not. If creation of the scheduling group succeeds, it is put into the pool of scheduling groups to be reused when a new service level is created. Therefore, the node handling CREATE SERVICE LEVEL would always use the scheduling group that was originally created for the sake of the test as a SG for the new service level. All of the above is intentional and was actually fixed by the aforementioned issue. However, the test scheduling groups would always get unique names and, therefore, the error would no longer reproduce. However, the faulty logic that ran previously and caused the bug still runs - when a node updates its service levels cache on group0 reload. The test previously used only one node. Fix it by starting two nodes instead of one at the beginning of the test and by serving all service level commands to the first node - were the issue not fixed, the error would get triggered on the second node.