bozo: increase salvage instance poll rate
authorMichael Meffie <mmeffie@sinenomine.net>
Tue, 17 Apr 2012 02:29:24 +0000 (22:29 -0400)
committerDerrick Brashear <shadow@dementix.org>
Fri, 4 May 2012 15:32:48 +0000 (08:32 -0700)
Increase the bos client poll rate of the salvager temporary bnode
instance status, from every 5 seconds to 1 second.  This reduces the
minimum time bos salvage takes, from 5 seconds to 1 second, which
can add up when doing a large number of volume salvages.

Change-Id: Ia0f48bfabae9442ab0f1b4a6f43df34699892f66
Reviewed-on: http://gerrit.openafs.org/7231
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Tom Keiser <tkeiser@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementix.org>

src/bozo/bos.c

index 2d54598..ad369c9 100644 (file)
@@ -1144,6 +1144,7 @@ DoSalvage(struct rx_connection * aconn, char * aparm1, char * aparm2,
     char pbuffer[PARMBUFFERSSIZE];
     afs_int32 partNumber;
     char *notifier = NONOTIFIER;
+    int count;
 
     /* if a partition was specified, canonicalize the name, since
      * the salvager has a stupid partition ID parser */
@@ -1314,13 +1315,15 @@ DoSalvage(struct rx_connection * aconn, char * aparm1, char * aparm2,
        goto done;
     }
     /* now wait for bnode to disappear */
+    count = 0;
     while (1) {
-       IOMGR_Sleep(5);
+       IOMGR_Sleep(1);
        tp = tbuffer;
        code = BOZO_GetInstanceInfo(aconn, "salvage-tmp", &tp, &istatus);
        if (code)
            break;
-       printf("bos: waiting for salvage to complete.\n");
+       if ((++count % 5) == 0)
+           printf("bos: waiting for salvage to complete.\n");
     }
     if (code != BZNOENT) {
        printf("bos: salvage failed (%s)\n", em(code));