diff --git a/ocs_ci/helpers/helpers.py b/ocs_ci/helpers/helpers.py index e245d0f5a9c..429e337d9ed 100644 --- a/ocs_ci/helpers/helpers.py +++ b/ocs_ci/helpers/helpers.py @@ -924,7 +924,7 @@ def delete_bulk_pvcs(pvc_yaml_dir, pv_names_list, namespace): cmd = f"delete -f {pvc_yaml_dir}/" oc.exec_oc_cmd(command=cmd, out_yaml_format=False) - time.sleep(len(pv_names_list) / 2) + time.sleep(len(pv_names_list) * 5) # previously was len(pv_names_list) / 2 for pv_name in pv_names_list: validate_pv_delete(pv_name) @@ -1673,13 +1673,22 @@ def measure_pv_deletion_time_bulk( logs += pod.get_pod_logs(pod_name[1], "csi-provisioner") logs = logs.split("\n") + delete_suffix_to_search = ( + "succeeded" + if version.get_semantic_ocs_version_from_config() <= version.VERSION_4_13 + else "persistentvolume deleted succeeded" + ) loop_counter = 0 while True: no_data_list = list() for pv in pv_name_list: # check if PV data present in CSI logs start = [i for i in logs if re.search(f'delete "{pv}": started', i)] - end = [i for i in logs if re.search(f'delete "{pv}": succeeded', i)] + end = [ + i + for i in logs + if re.search(f'delete "{pv}": {delete_suffix_to_search}', i) + ] if not start or not end: no_data_list.append(pv) @@ -1710,7 +1719,11 @@ def measure_pv_deletion_time_bulk( start_tm = f"{this_year} {mon_day}" start_time = datetime.datetime.strptime(start_tm, DATE_TIME_FORMAT) # Extract the deletion end time for the PV - end = [i for i in logs if re.search(f'delete "{pv_name}": succeeded', i)] + end = [ + i + for i in logs + if re.search(f'delete "{pv_name}": {delete_suffix_to_search}', i) + ] mon_day = " ".join(end[0].split(" ")[0:2]) end_tm = f"{this_year} {mon_day}" end_time = datetime.datetime.strptime(end_tm, DATE_TIME_FORMAT) diff --git a/tests/e2e/performance/csi_tests/test_pvc_bulk_creation_deletion_performance.py b/tests/e2e/performance/csi_tests/test_pvc_bulk_creation_deletion_performance.py index c57e6895c60..25f0de08cf4 100644 --- a/tests/e2e/performance/csi_tests/test_pvc_bulk_creation_deletion_performance.py +++ b/tests/e2e/performance/csi_tests/test_pvc_bulk_creation_deletion_performance.py @@ -135,7 +135,6 @@ def get_bulk_creation_time(self): def test_bulk_pvc_creation_deletion_measurement_performance( self, storageclass_factory, interface_type, bulk_size ): - """ Measuring PVC creation and deletion time of bulk_size PVCs and sends results to the Elastic Search DB @@ -148,7 +147,7 @@ def test_bulk_pvc_creation_deletion_measurement_performance( self.interface = interface_type self.sc_obj = storageclass_factory(self.interface) - bulk_creation_time_limit = bulk_size / 2 + bulk_creation_time_limit = bulk_size # old value was bulk_size / 2 log.info(f"Start creating new {bulk_size} PVCs") @@ -290,12 +289,15 @@ def test_bulk_pvc_creation_after_deletion_performance( f"Creation after deletion time of {number_of_pvcs} is {total_time} seconds." ) - if total_time > 60: + total_time_accpeted = 600 # old value was 60 + if total_time > total_time_accpeted: raise ex.PerformanceException( f"{number_of_pvcs} PVCs creation (after initial deletion of " - f"75% of PVCs) time is {total_time} and greater than 50 seconds." + f"75% of PVCs) time is {total_time} and greater than {total_time_accpeted} seconds." ) - log.info(f"{number_of_pvcs} PVCs creation time took less than a 50 seconds") + log.info( + f"{number_of_pvcs} PVCs creation time took less than a {total_time_accpeted} seconds" + ) csi_creation_times = performance_lib.csi_bulk_pvc_time_measure( self.interface, self.pvc_objs, "create", csi_bulk_start_time