From 39fbe873df24fd86ec33d8ebe145872ef8f54f9e Mon Sep 17 00:00:00 2001 From: Adam Rutkowski Date: Tue, 20 Sep 2022 16:14:34 +0200 Subject: [PATCH] Fix test_cleaning_policy_config ALRU assumptions ALRU does not have a configurable sleep time between active awakenings of the cleaning thread. Once it starts cleaning, it does not back off unless staleness time and/or activity threshold constraints force it to do so. Changing test_cleaning_policy_config assumptions so that it only checks whether minimum expected amount of data is cleaned rather than assume exact amount of data to be cleaned. Signed-off-by: Adam Rutkowski --- .../lazy_writes/cleaning_policy/test_cleaning_params.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/test/functional/tests/lazy_writes/cleaning_policy/test_cleaning_params.py b/test/functional/tests/lazy_writes/cleaning_policy/test_cleaning_params.py index 8ae4f32..9a4e91e 100644 --- a/test/functional/tests/lazy_writes/cleaning_policy/test_cleaning_params.py +++ b/test/functional/tests/lazy_writes/cleaning_policy/test_cleaning_params.py @@ -141,10 +141,13 @@ def test_cleaning_policy_config(): f"Dirty data before pause: {core_dirty_before}\n" f"Dirty data after pause: {core_dirty_after}" ) - elif core_dirty_before != core_dirty_after + data_to_flush: + # Only check whether a minimum amount of data is flushed, as ALRU does not have + # a configurable sleep time between active flushing iterations which would allow + # to precisely estimate expected amount of data. + elif core_dirty_before < core_dirty_after + data_to_flush: TestRun.LOGGER.error( f"Number of dirty blocks flushed differs from configured in policy.\n" - f"Expected dirty data flushed: {data_to_flush}\n" + f"Expected minimum dirty data flushed: {data_to_flush}\n" f"Actual dirty data flushed: " f"{core_dirty_before - core_dirty_after}" )