From 87013d25b5aa3306ca63c232a0f40226c9b7f776 Mon Sep 17 00:00:00 2001 From: Petr Stodulka Date: Wed, 25 Sep 2024 17:29:02 +0200 Subject: [PATCH] Skip checking files under .../directory-hash/ dir * The main reason for this change is to improve performance and reduce flood of logs for the content that does not seem to be important to check for the upgrade process. The directory has been relatively recently added to ca-certificates rpm on EL 9+ systems mostly to improve performance of OpenSSL and the content does not seem to be important for the IPU process. The high number of files takes too much time to evaluate and causes flood of logs that are not important. This is updated solution that we drop originally: 60f500e59bb92 --- .../targetuserspacecreator/libraries/userspacegen.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py index cd2d7d6efd..d7698056f5 100644 --- a/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py +++ b/repos/system_upgrade/common/actors/targetuserspacecreator/libraries/userspacegen.py @@ -311,6 +311,16 @@ def _get_files_owned_by_rpms(context, dirpath, pkgs=None, recursive=False): searchdir = context.full_path(dirpath) if recursive: for root, _, files in os.walk(searchdir): + if '/directory-hash/' in root: + # tl;dr; for the performance improvement + # The directory has been relatively recently added to ca-certificates + # rpm on EL 9+ systems and the content does not seem to be important + # for the IPU process. Also, it contains high number of files and + # their processing floods the output and slows down IPU. + # So skipping it entirely. + # This is updated solution that we drop originally: 60f500e59bb92 + api.current_logger().debug('SKIP files in the {} directory: Not important for the IPU.'.format(root)) + continue for filename in files: relpath = os.path.relpath(os.path.join(root, filename), searchdir) file_list.append(relpath)