From a14793892bafaad0802844cbb56be3be3220eb47 Mon Sep 17 00:00:00 2001 From: Petr Stodulka Date: Wed, 25 Sep 2024 17:29:02 +0200 Subject: [PATCH 14/40] 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 cd2d7d6e..d7698056 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) -- 2.47.0