[OpenAFS-devel] Salvager should be less verbose (with patch)
Harald Barth
haba@pdc.kth.se
Fri, 18 Mar 2005 14:55:05 +0100 (MET)
Improvment to salvager which otherwise fills up our partitions with
log messages. After patch below it should write
1000 inodes to process
900 inodes to proces
800 inodes to process
700 inodes to process
600 inodes to process
500 inodes to process
400 inodes to process
300 inodes to process
200 inodes to process
100 inodes to process
90 inodes to process
80 inodes to process
70 inodes to process
60 inodes to process
50 inodes to process
40 inodes to process
30 inodes to process
20 inodes to process
10 inodes to process
9 inodes to process
8 inodes to process
7 inodes to process
6 inodes to process
5 inodes to process
4 inodes to process
3 inodes to process
2 inodes to process
1 inodes to process
instead one line for every inode (3411985 times on our server) which
accounts for around half the size of this file:
-rw-r--r-- 2 root bin 152391076 Mar 10 20:41 /usr/openafs/var/openafs/logs/SalvageLog
Harald.
--- openafs-1.3.79/src/vol/vol-salvage.c.orig 2005-03-18 14:28:41.000000000 +0100
+++ openafs-1.3.79/src/vol/vol-salvage.c 2005-03-18 14:44:12.000000000 +0100
@@ -2029,6 +2029,7 @@
/* Fix actual inode counts */
if (!Showmode) {
+ int modulo = 100000;
Log("totalInodes %d\n",totalInodes);
for (ip = inodes; totalInodes; ip++, totalInodes--) {
static int TraceBadLinkCounts = 0;
@@ -2065,8 +2066,19 @@
}
ip->linkCount++;
}
-
- Log("%d inodes to process\n",totalInodes);
+
+ if (totalInodes <= 10)
+ modulo = 1;
+ else if (totalInodes <= 100)
+ modulo = 10;
+ else if (totalInodes <= 1000)
+ modulo = 100;
+ else if (totalInodes <= 10000)
+ modulo = 1000;
+ else if (totalInodes <= 100000)
+ modulo = 10000;
+ if (totalInodes % modulo == 0)
+ Log("%d inodes to process\n",totalInodes);
}
#ifdef AFS_NAMEI_ENV
while (dec_VGLinkH > 0) {