Skip to content

Commit

Permalink
fix(unit-tests): stop triggering health checks in longevity unit test
Browse files Browse the repository at this point in the history
The 'test_longevity.py::test_test_user_batch_custom_time' unit test uses
the 'test-cases/scale/longevity-5000-tables.yaml' config file for
running a short longevity test which triggers a nemesis.

If health checks are enabled then the "nemesis call" runs much longer
while health checks are completed 2 times - before and after the
nemesis. And while it is ongoing the nemesis lock gets held.
And the problem with it is that it runs even after finish of this test.
So, any another unit test which tries to get a nemesis lock will stumble
upon a held lock for 10+ minutes.

It started happening after the merge of the PR [1] which enabled health
checks in the mentioned config file.
The affected test is following:
- test_nemesis.py::test_list_nemesis_of_added_disrupt_methods

Alphabetically it runs after
the 'test_longevity.py::test_test_user_batch_custom_time' one.

So, disable health checks to avoid side-effects and doing redundant
stuff which were not planned when the test was written.

[1] scylladb#9843

(cherry picked from commit a78d65f)
  • Loading branch information
vponomaryov authored and actions-user committed Jan 21, 2025
1 parent 1324f40 commit 04b1c95
Showing 1 changed file with 11 additions and 0 deletions.
11 changes: 11 additions & 0 deletions unit_tests/test_longevity.py
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,17 @@ def test_test_user_batch_custom_time(params):
class DummyLongevityTest(LongevityTest):
def _init_params(self):
self.params = params
# NOTE: running this test we get a nemesis trigerred,
# and if health checks are enabled then the nemesis lock gets held
# while it's checks are running. It may run for more than 10 minutes.
# Additional problem is that it is not controlled by this test,
# thread just runs as a side-car even after finish of this test.
# In this case any further unit test which runs a nemesis
# will stumble upon a held lock.
# One of such tests is following:
# - test_nemesis.py::test_list_nemesis_of_added_disrupt_methods
# So, disable health checks here.
self.params["cluster_health_check"] = False

def start_argus_heartbeat_thread(self):
# prevent from heartbeat thread to start
Expand Down

0 comments on commit 04b1c95

Please sign in to comment.