Blame SOURCES/rear-bz1993296.patch

6f74ef
From 4233fe30b315737ac8c4d857e2b04e021c2e2886 Mon Sep 17 00:00:00 2001
6f74ef
From: Pavel Cahyna <pcahyna@redhat.com>
6f74ef
Date: Mon, 16 Aug 2021 10:10:38 +0300
6f74ef
Subject: [PATCH] Revert the main part of PR #2299
6f74ef
6f74ef
multipath -l is very slow with many multipath devices. As it will be
6f74ef
called for every multipath device, it leads to quadratic time complexity
6f74ef
in the number of multipath devices. For thousands of devices, ReaR can
6f74ef
take hours to scan and exclude them. We therefore have to comment
6f74ef
multipath -l out, as it is a huge performance regression, and find
6f74ef
another solution to bug #2298.
6f74ef
---
6f74ef
 usr/share/rear/lib/layout-functions.sh | 5 ++++-
6f74ef
 1 file changed, 4 insertions(+), 1 deletion(-)
6f74ef
6f74ef
diff --git a/usr/share/rear/lib/layout-functions.sh b/usr/share/rear/lib/layout-functions.sh
6f74ef
index cdd81a14..8c8be74b 100644
6f74ef
--- a/usr/share/rear/lib/layout-functions.sh
6f74ef
+++ b/usr/share/rear/lib/layout-functions.sh
6f74ef
@@ -771,7 +771,10 @@ function is_multipath_path {
6f74ef
     # so that no "multipath -l" output could clutter the log (the "multipath -l" output is irrelevant here)
6f74ef
     # in contrast to e.g. test "$( multipath -l )" that would falsely succeed with blank output
6f74ef
     # and the output would appear in the log in 'set -x' debugscript mode:
6f74ef
-    multipath -l | grep -q '[[:alnum:]]' || return 1
6f74ef
+    #
6f74ef
+    # Unfortunately, multipat -l is quite slow with many multipath devices
6f74ef
+    # and becomes a performance bottleneck, so we must comment it out for now.
6f74ef
+    #multipath -l | grep -q '[[:alnum:]]' || return 1
6f74ef
     # Check if a block device should be a path in a multipath device:
6f74ef
     multipath -c /dev/$1 &>/dev/null
6f74ef
 }
6f74ef
-- 
6f74ef
2.26.3
6f74ef