summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrank Ch. Eigler <fche@redhat.com>2021-04-15 06:29:01 -0400
committerFrank Ch. Eigler <fche@redhat.com>2021-04-15 07:21:25 -0400
commita81366e011f686ca4a907673801fb4902a7e790c (patch)
tree1a54521487072abee6cb08f7a539146dfc738b0d
parent2a849629a03ff45422649ebbdb6e5cfcf3061bf6 (diff)
downloadelfutils-a81366e011f686ca4a907673801fb4902a7e790c.tar.gz
debuginfod: only update database stats once per groom
On very large servers, each database-stat counting pass can take tens of minutes (!), and doing it twice per groom pass does not seriously improve data quality. Just do it once, after stale data removal & basic sqlite vacuum. Signed-off-by: Frank Ch. Eigler <fche@redhat.com>
-rw-r--r--debuginfod/ChangeLog4
-rw-r--r--debuginfod/debuginfod.cxx2
2 files changed, 4 insertions, 2 deletions
diff --git a/debuginfod/ChangeLog b/debuginfod/ChangeLog
index 3bd2ff60..ed2f77cf 100644
--- a/debuginfod/ChangeLog
+++ b/debuginfod/ChangeLog
@@ -1,5 +1,9 @@
2021-04-15 Frank Ch. Eigler <fche@redhat.com>
+ * debuginfod.cxx (groom): Only update database stats once.
+
+2021-04-15 Frank Ch. Eigler <fche@redhat.com>
+
* debuginfod.cxx (elf_classify): Recognize symtab-only stripped files
like fedora's libicudata as debuginfo files.
diff --git a/debuginfod/debuginfod.cxx b/debuginfod/debuginfod.cxx
index 2d73a136..50777f1f 100644
--- a/debuginfod/debuginfod.cxx
+++ b/debuginfod/debuginfod.cxx
@@ -3100,8 +3100,6 @@ void groom()
struct timespec ts_start, ts_end;
clock_gettime (CLOCK_MONOTONIC, &ts_start);
- database_stats_report();
-
// scan for files that have disappeared
sqlite_ps files (db, "check old files", "select s.mtime, s.file, f.name from "
BUILDIDS "_file_mtime_scanned s, " BUILDIDS "_files f "