Blame SOURCES/0028-dirsize-Skip-dirs-in-which-sosreport-is-being-genera.patch

fa18db
From 0b37412bc975d6e043c34dbff379029fd94a1758 Mon Sep 17 00:00:00 2001
fa18db
From: Martin Kutlak <mkutlak@redhat.com>
fa18db
Date: Wed, 14 Aug 2019 14:46:08 +0000
fa18db
Subject: [PATCH] dirsize: Skip dirs in which sosreport is being generated
fa18db
fa18db
With these changes ABRT will skip directories in which sosreport is running
fa18db
and won't delete them when MaxCrashReportSize limit is exceeded.
fa18db
fa18db
I had a concern about the size of the logs that sosreport collects but
fa18db
there is a limit set by sosreport for how big the individual logs can
fa18db
be and the default value is 25MiB.
fa18db
fa18db
Fixes: rhbz#1671232
fa18db
fa18db
Signed-off-by: Martin Kutlak <mkutlak@redhat.com>
fa18db
fa18db
fa18db
(cherry picked from commit eef59d2358cf63338f38727c5d08be70619e4e55)
fa18db
---
fa18db
 src/lib/dirsize.c | 5 +++++
fa18db
 1 file changed, 5 insertions(+)
fa18db
fa18db
diff --git a/src/lib/dirsize.c b/src/lib/dirsize.c
fa18db
index 6d96e71..7ee9752 100644
fa18db
--- a/src/lib/dirsize.c
fa18db
+++ b/src/lib/dirsize.c
fa18db
@@ -91,6 +91,11 @@ double get_dirsize_find_largest_dir(
fa18db
         if (dot_or_dotdot(ep->d_name))
fa18db
             continue;
fa18db
         char *dname = concat_path_file(pPath, ep->d_name);
fa18db
+        if (lstat(concat_path_file(dname, "sosreport.log"), &statbuf) == 0)
fa18db
+        {
fa18db
+            log_debug("Skipping %s': sosreport is being generated.", dname);
fa18db
+            goto next;
fa18db
+        }
fa18db
         if (lstat(dname, &statbuf) != 0)
fa18db
         {
fa18db
             goto next;
fa18db
-- 
fa18db
2.26.0
fa18db