]> git.ipfire.org Git - thirdparty/squid.git/commitdiff
Back out recent 'store double-check' patch; waiting for background
authorwessels <>
Sat, 9 Dec 2000 08:47:18 +0000 (08:47 +0000)
committerwessels <>
Sat, 9 Dec 2000 08:47:18 +0000 (08:47 +0000)
version.

src/enums.h
src/fs/aufs/store_dir_aufs.cc
src/fs/diskd/store_dir_diskd.cc
src/fs/ufs/store_dir_ufs.cc
src/globals.h
src/main.cc
src/store_rebuild.cc
src/structs.h

index 399fc9e8fc27feab98ded551b699e0abb2f4a7ca..162d76ff195a921328b24604bde72cc4d52c5225 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: enums.h,v 1.176 2000/11/10 09:04:50 adrian Exp $
+ * $Id: enums.h,v 1.177 2000/12/09 01:47:18 wessels Exp $
  *
  *
  * SQUID Internet Object Cache  http://squid.nlanr.net/Squid/
@@ -675,12 +675,3 @@ enum {
     NETDB_EX_RTT,
     NETDB_EX_HOPS
 };
-
-/*
- * These are used for the store double-check code
- */
-typedef enum {
-    DBLCHECK_NONE,
-    DBLCHECK_REPORTONLY,
-    DBLCHECK_FORCE
-} dblcheck_t;
index 6c57d6fefceaff5f526163699f24b258dddad39e..a0c4cc1cee1c450f9b54c9c6c7d084c202337fdd 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: store_dir_aufs.cc,v 1.21 2000/12/09 00:35:01 wessels Exp $
+ * $Id: store_dir_aufs.cc,v 1.22 2000/12/09 01:47:22 wessels Exp $
  *
  * DEBUG: section 47    Store Directory Routines
  * AUTHOR: Duane Wessels
@@ -119,7 +119,6 @@ static EVH storeAufsDirCleanEvent;
 static int storeAufsDirIs(SwapDir * sd);
 static int storeAufsFilenoBelongsHere(int fn, int F0, int F1, int F2);
 static int storeAufsCleanupDoubleCheck(SwapDir *, StoreEntry *);
-static int storeAufsCheckFile(SwapDir * sd, sfileno filn, size_t swap_file_sz);
 static void storeAufsDirStats(SwapDir *, StoreEntry *);
 static void storeAufsDirInitBitmap(SwapDir *);
 static int storeAufsDirValidFileno(SwapDir *, sfileno, int);
@@ -478,7 +477,6 @@ storeAufsDirRebuildFromDirectory(void *data)
            debug(20, 1) ("storeAufsDirRebuildFromDirectory: SIZE MISMATCH %d!=%d\n",
                tmpe.swap_file_sz, (int) sb.st_size);
            storeAufsDirUnlinkFile(SD, sfileno);
-           rb->counts.filesizemismatchcount++;
            continue;
        }
        if (EBIT_TEST(tmpe.flags, KEY_PRIVATE)) {
@@ -526,7 +524,6 @@ storeAufsDirRebuildFromSwapLog(void *data)
     int count;
     int used;                  /* is swapfile already in use? */
     int disk_entry_newer;      /* is the log entry newer than current entry? */
-    int file_bad;
     double x;
     assert(rb != NULL);
     /* load a number of objects per invocation */
@@ -612,21 +609,7 @@ storeAufsDirRebuildFromSwapLog(void *data)
         * appear to have a newer entry?  Compare 'lastref' from the
         * swap log to e->lastref. */
        disk_entry_newer = e ? (s.lastref > e->lastref ? 1 : 0) : 0;
-       if (!used && (rb->flags.need_to_validate ||
-               (opt_store_doublecheck != DBLCHECK_NONE))) {
-           file_bad = storeAufsCheckFile(SD, s.swap_filen, s.swap_file_sz);
-       } else
-           file_bad = 0;
-       if (file_bad) {
-           if (file_bad == -2) {
-               if (opt_store_doublecheck == DBLCHECK_FORCE)
-                   storeAufsDirUnlinkFile(SD, s.swap_filen);
-               rb->counts.filesizemismatchcount++;
-               continue;
-           }
-           rb->counts.missingcount++;
-           continue;
-       } else if (used && !disk_entry_newer) {
+       if (used && !disk_entry_newer) {
            /* log entry is old, ignore it */
            rb->counts.clashcount++;
            continue;
@@ -1608,43 +1591,31 @@ storeAufsDirFullPath(SwapDir * SD, sfileno filn, char *fullpath)
  */
 static int
 storeAufsCleanupDoubleCheck(SwapDir * sd, StoreEntry * e)
-{
-    int rv = storeAufsCheckFile(sd, e->swap_filen, e->swap_file_sz);
-    if (rv)
-       storeEntryDump(e, 0);
-    return rv;
-}
-
-/*
- * storeAufsCheckFile
- *
- * This is called by storerebuildFromSwapLog if -S was given on the command 
- * line. or a Dirty state is found
- */
-static int
-storeAufsCheckFile(SwapDir * sd, sfileno filen, size_t swap_file_sz)
 {
     struct stat sb;
-
-    if (stat(storeAufsDirFullPath(sd, filen, NULL), &sb) < 0) {
-       debug(20, 1) ("storeAufsCheckFile: MISSING SWAP FILE\n");
-       debug(20, 1) ("storeAufsCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeAufsCheckFile: PATH %s\n", storeAufsDirFullPath(sd, filen, NULL));
+    if (stat(storeAufsDirFullPath(sd, e->swap_filen, NULL), &sb) < 0) {
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: MISSING SWAP FILE\n");
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: PATH %s\n",
+           storeAufsDirFullPath(sd, e->swap_filen, NULL));
+       storeEntryDump(e, 0);
        return -1;
     }
-    if (swap_file_sz != sb.st_size) {
-       debug(20, 1) ("storeAufsCheckFile: SIZE MISMATCH\n");
-       debug(20, 1) ("storeAufsCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeAufsCheckFile: PATH %s\n", storeAufsDirFullPath(sd, filen, NULL));
-       debug(20, 1) ("storeAufsCheckFile: ENTRY SIZE: %d, FILE SIZE: %d\n", swap_file_sz, (int) sb.st_size);
-       return -2;
+    if (e->swap_file_sz != sb.st_size) {
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: SIZE MISMATCH\n");
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: PATH %s\n",
+           storeAufsDirFullPath(sd, e->swap_filen, NULL));
+       debug(20, 0) ("storeAufsCleanupDoubleCheck: ENTRY SIZE: %d, FILE SIZE: %d\n",
+           e->swap_file_sz, (int) sb.st_size);
+       storeEntryDump(e, 0);
+       return -1;
     }
     return 0;
 }
 
 /*
- * storeAufsDirParse
- *
+ * storeAufsDirParse *
  * Called when a *new* fs is being setup.
  */
 void
index e95564a2fa66a1f224d072e9b5c698c2751b61a6..6d6bec4a747d87d83d83586c6916477eee1e3207 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: store_dir_diskd.cc,v 1.28 2000/12/09 00:35:04 wessels Exp $
+ * $Id: store_dir_diskd.cc,v 1.29 2000/12/09 01:47:22 wessels Exp $
  *
  * DEBUG: section 47    Store Directory Routines
  * AUTHOR: Duane Wessels
@@ -127,7 +127,6 @@ static EVH storeDiskdDirCleanEvent;
 static int storeDiskdDirIs(SwapDir * sd);
 static int storeDiskdFilenoBelongsHere(int fn, int F0, int F1, int F2);
 static int storeDiskdCleanupDoubleCheck(SwapDir *, StoreEntry *);
-static int storeDiskdCheckFile(SwapDir * sd, sfileno filn, size_t swap_file_sz);
 static void storeDiskdDirStats(SwapDir *, StoreEntry *);
 static void storeDiskdDirInitBitmap(SwapDir *);
 static int storeDiskdDirValidFileno(SwapDir *, sfileno, int);
@@ -644,7 +643,6 @@ storeDiskdDirRebuildFromDirectory(void *data)
            debug(20, 1) ("storeDiskdDirRebuildFromDirectory: SIZE MISMATCH %d!=%d\n",
                tmpe.swap_file_sz, (int) sb.st_size);
            storeDiskdDirUnlinkFile(SD, sfileno);
-           rb->counts.filesizemismatchcount++;
            continue;
        }
        if (EBIT_TEST(tmpe.flags, KEY_PRIVATE)) {
@@ -692,7 +690,6 @@ storeDiskdDirRebuildFromSwapLog(void *data)
     int count;
     int used;                  /* is swapfile already in use? */
     int disk_entry_newer;      /* is the log entry newer than current entry? */
-    int file_bad;
     double x;
     assert(rb != NULL);
     /* load a number of objects per invocation */
@@ -803,21 +800,7 @@ storeDiskdDirRebuildFromSwapLog(void *data)
         * appear to have a newer entry?  Compare 'lastref' from the
         * swap log to e->lastref. */
        disk_entry_newer = e ? (s.lastref > e->lastref ? 1 : 0) : 0;
-       if (!used && (rb->flags.need_to_validate ||
-               (opt_store_doublecheck != DBLCHECK_NONE))) {
-           file_bad = storeDiskdCheckFile(SD, s.swap_filen, s.swap_file_sz);
-       } else
-           file_bad = 0;
-       if (file_bad) {
-           if (file_bad == -2) {
-               if (opt_store_doublecheck == DBLCHECK_FORCE)
-                   storeDiskdDirUnlinkFile(SD, s.swap_filen);
-               rb->counts.filesizemismatchcount++;
-               continue;
-           }
-           rb->counts.missingcount++;
-           continue;
-       } else if (used && !disk_entry_newer) {
+       if (used && !disk_entry_newer) {
            /* log entry is old, ignore it */
            rb->counts.clashcount++;
            continue;
@@ -1852,36 +1835,25 @@ storeDiskdDirFullPath(SwapDir * SD, sfileno filn, char *fullpath)
  */
 static int
 storeDiskdCleanupDoubleCheck(SwapDir * sd, StoreEntry * e)
-{
-    int rv = storeDiskdCheckFile(sd, e->swap_filen, e->swap_file_sz);
-    if (rv)
-       storeEntryDump(e, 0);
-    return rv;
-}
-
-/*
- * storeDiskdCheckFile
- *
- * This is called by storerebuildFromSwapLog if -S was given on the command line * or a Dirty state is found
- */
-static int
-storeDiskdCheckFile(SwapDir * sd, sfileno filen, size_t swap_file_sz)
 {
     struct stat sb;
-
-    if (stat(storeDiskdDirFullPath(sd, filen, NULL), &sb) < 0) {
-       debug(20, 1) ("storeDiskdCheckFile: MISSING SWAP FILE\n");
-       debug(20, 1) ("storeDiskdCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeDiskdCheckFile: PATH %s\n", storeDiskdDirFullPath(sd, filen, NULL));
-
+    if (stat(storeDiskdDirFullPath(sd, e->swap_filen, NULL), &sb) < 0) {
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: MISSING SWAP FILE\n");
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: PATH %s\n",
+           storeDiskdDirFullPath(sd, e->swap_filen, NULL));
+       storeEntryDump(e, 0);
        return -1;
     }
-    if (swap_file_sz != sb.st_size) {
-       debug(20, 1) ("storeDiskdCheckFile: SIZE MISMATCH\n");
-       debug(20, 1) ("storeDiskdCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeDiskdCheckFile: PATH %s\n", storeDiskdDirFullPath(sd, filen, NULL));
-       debug(20, 1) ("storeDiskdCheckFile: ENTRY SIZE: %d, FILE SIZE: %d\n", swap_file_sz, (int) sb.st_size);
-       return -2;
+    if (e->swap_file_sz != sb.st_size) {
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: SIZE MISMATCH\n");
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: PATH %s\n",
+           storeDiskdDirFullPath(sd, e->swap_filen, NULL));
+       debug(20, 0) ("storeDiskdCleanupDoubleCheck: ENTRY SIZE: %d, FILE SIZE: %d\n",
+           e->swap_file_sz, (int) sb.st_size);
+       storeEntryDump(e, 0);
+       return -1;
     }
     return 0;
 }
index 3e47b1138eda69367653cc0217c252efffb04e79..3c7253e1e84e3911b5fbbb3341f2446eb17450d2 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: store_dir_ufs.cc,v 1.18 2000/12/09 00:35:05 wessels Exp $
+ * $Id: store_dir_ufs.cc,v 1.19 2000/12/09 01:47:23 wessels Exp $
  *
  * DEBUG: section 47    Store Directory Routines
  * AUTHOR: Duane Wessels
@@ -117,7 +117,6 @@ static EVH storeUfsDirCleanEvent;
 static int storeUfsDirIs(SwapDir * sd);
 static int storeUfsFilenoBelongsHere(int fn, int F0, int F1, int F2);
 static int storeUfsCleanupDoubleCheck(SwapDir *, StoreEntry *);
-static int storeUfsCheckFile(SwapDir * sd, sfileno filn, size_t swap_file_sz);
 static void storeUfsDirStats(SwapDir *, StoreEntry *);
 static void storeUfsDirInitBitmap(SwapDir *);
 static int storeUfsDirValidFileno(SwapDir *, sfileno, int);
@@ -476,7 +475,6 @@ storeUfsDirRebuildFromDirectory(void *data)
            debug(20, 1) ("storeUfsDirRebuildFromDirectory: SIZE MISMATCH %d!=%d\n",
                tmpe.swap_file_sz, (int) sb.st_size);
            storeUfsDirUnlinkFile(SD, sfileno);
-           rb->counts.filesizemismatchcount++;
            continue;
        }
        if (EBIT_TEST(tmpe.flags, KEY_PRIVATE)) {
@@ -524,7 +522,6 @@ storeUfsDirRebuildFromSwapLog(void *data)
     int count;
     int used;                  /* is swapfile already in use? */
     int disk_entry_newer;      /* is the log entry newer than current entry? */
-    int file_bad;
     double x;
     assert(rb != NULL);
     /* load a number of objects per invocation */
@@ -610,21 +607,7 @@ storeUfsDirRebuildFromSwapLog(void *data)
         * appear to have a newer entry?  Compare 'lastref' from the
         * swap log to e->lastref. */
        disk_entry_newer = e ? (s.lastref > e->lastref ? 1 : 0) : 0;
-       if (!used && (rb->flags.need_to_validate ||
-               (opt_store_doublecheck != DBLCHECK_NONE))) {
-           file_bad = storeUfsCheckFile(SD, s.swap_filen, s.swap_file_sz);
-       } else
-           file_bad = 0;
-       if (file_bad) {
-           if (file_bad == -2) {
-               if (opt_store_doublecheck == DBLCHECK_FORCE)
-                   storeUfsDirUnlinkFile(SD, s.swap_filen);
-               rb->counts.filesizemismatchcount++;
-               continue;
-           }
-           rb->counts.missingcount++;
-           continue;
-       } else if (used && !disk_entry_newer) {
+       if (used && !disk_entry_newer) {
            /* log entry is old, ignore it */
            rb->counts.clashcount++;
            continue;
@@ -687,19 +670,19 @@ storeUfsDirRebuildFromSwapLog(void *data)
            /* load new */
            (void) 0;
        }
-       /* update store_swap_size */
-       rb->counts.objcount++;
-       e = storeUfsDirAddDiskRestore(SD, s.key,
-           s.swap_filen,
-           s.swap_file_sz,
-           s.expires,
-           s.timestamp,
-           s.lastref,
-           s.lastmod,
-           s.refcount,
-           s.flags,
-           (int) rb->flags.clean);
-       storeDirSwapLog(e, SWAP_LOG_ADD);
+       /* update store_swap_size */
+       rb->counts.objcount++;
+       e = storeUfsDirAddDiskRestore(SD, s.key,
+           s.swap_filen,
+           s.swap_file_sz,
+           s.expires,
+           s.timestamp,
+           s.lastref,
+           s.lastmod,
+           s.refcount,
+           s.flags,
+           (int) rb->flags.clean);
+       storeDirSwapLog(e, SWAP_LOG_ADD);
     }
     eventAdd("storeRebuild", storeUfsDirRebuildFromSwapLog, rb, 0.0, 1);
 }
@@ -1595,42 +1578,29 @@ storeUfsDirFullPath(SwapDir * SD, sfileno filn, char *fullpath)
  */
 static int
 storeUfsCleanupDoubleCheck(SwapDir * sd, StoreEntry * e)
-{
-    int rv = storeUfsCheckFile(sd, e->swap_filen, e->swap_file_sz);
-    if (rv)
-       storeEntryDump(e, 0);
-    return rv;
-}
-
-/*
- * storeUfsCheckFile
- *
- * This is called by storerebuildFromSwapLog if -S was given on the command line. or a Dirty state is found
- */
-static int
-storeUfsCheckFile(SwapDir * sd, sfileno filen, size_t swap_file_sz)
 {
     struct stat sb;
-
-    if (stat(storeUfsDirFullPath(sd, filen, NULL), &sb) < 0) {
-       debug(20, 1) ("storeUfsCheckFile: MISSING SWAP FILE\n");
-       debug(20, 1) ("storeUfsCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeUfsCheckFile: PATH %s\n", storeUfsDirFullPath(sd, filen, NULL));
-
+    if (stat(storeUfsDirFullPath(sd, e->swap_filen, NULL), &sb) < 0) {
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: MISSING SWAP FILE\n");
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: PATH %s\n",
+           storeUfsDirFullPath(sd, e->swap_filen, NULL));
+       storeEntryDump(e, 0);
        return -1;
     }
-    if (swap_file_sz != sb.st_size) {
-       debug(20, 1) ("storeUfsCheckFile: SIZE MISMATCH\n");
-       debug(20, 1) ("storeUfsCheckFile: FILENO %08X\n", filen);
-       debug(20, 1) ("storeUfsCheckFile: PATH %s\n", storeUfsDirFullPath(sd, filen, NULL));
-       debug(20, 1) ("storeUfsCheckFile: ENTRY SIZE: %d, FILE SIZE: %d\n", swap_file_sz, (int) sb.st_size);
-       return -2;
+    if (e->swap_file_sz != sb.st_size) {
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: SIZE MISMATCH\n");
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: FILENO %08X\n", e->swap_filen);
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: PATH %s\n",
+           storeUfsDirFullPath(sd, e->swap_filen, NULL));
+       debug(20, 0) ("storeUfsCleanupDoubleCheck: ENTRY SIZE: %d, FILE SIZE: %d\n",
+           e->swap_file_sz, (int) sb.st_size);
+       storeEntryDump(e, 0);
+       return -1;
     }
     return 0;
 }
 
-
-
 /*
  * storeUfsDirParse
  *
index 2ce0ac9fb37865f476230194b3582c7ed44edc86..81414376de5e0846db303b23d61a20a9d548ebcc 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: globals.h,v 1.98 2000/11/10 09:04:51 adrian Exp $
+ * $Id: globals.h,v 1.99 2000/12/09 01:47:18 wessels Exp $
  *
  *
  * SQUID Internet Object Cache  http://squid.nlanr.net/Squid/
@@ -87,7 +87,7 @@ extern int opt_reload_hit_only;       /* 0 */
 extern int opt_syslog_enable;  /* 0 */
 extern int opt_udp_hit_obj;    /* 0 */
 extern int opt_create_swap_dirs;       /* 0 */
-extern dblcheck_t opt_store_doublecheck;       /* DBLCHECK_NONE */
+extern int opt_store_doublecheck;      /* 0 */
 extern int syslog_enable;      /* 0 */
 extern int theInIcpConnection; /* -1 */
 extern int theOutIcpConnection;        /* -1 */
index 3b8519450d98e4276fd0b08e42073bb9553d7f11..ac8d5d2512d244d2fb75c5687bf9c3702e47e743 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: main.cc,v 1.323 2000/12/05 09:15:59 wessels Exp $
+ * $Id: main.cc,v 1.324 2000/12/09 01:47:18 wessels Exp $
  *
  * DEBUG: section 1     Startup and Main Loop
  * AUTHOR: Harvest Derived
@@ -101,8 +101,7 @@ usage(void)
        "       -F        Don't serve any requests until store is rebuilt.\n"
        "       -N        No daemon mode.\n"
        "       -R        Do not set REUSEADDR on port.\n"
-       "       -S force  Force double-check swap during rebuild.\n"
-       "       -S reportonly Force double-check but do not attempt repair.\n"
+       "       -S        Double-check swap during rebuild.\n"
        "       -V        Virtual host httpd-accelerator.\n"
        "       -X        Force full debugging.\n"
        "       -Y        Only return UDP_HIT or UDP_MISS_NOFETCH during fast reload.\n",
@@ -116,7 +115,7 @@ mainParseOptions(int argc, char *argv[])
     extern char *optarg;
     int c;
 
-    while ((c = getopt(argc, argv, "CDFNRS:VYXa:d:f:hk:m::su:vz?")) != -1) {
+    while ((c = getopt(argc, argv, "CDFNRSVYXa:d:f:hk:m::su:vz?")) != -1) {
        switch (c) {
        case 'C':
            opt_catch_signals = 0;
@@ -134,14 +133,7 @@ mainParseOptions(int argc, char *argv[])
            opt_reuseaddr = 0;
            break;
        case 'S':
-           if ((int) strlen(optarg) < 1)
-               usage();
-           else if (!strncmp(optarg, "force", strlen(optarg)))
-               opt_store_doublecheck = DBLCHECK_FORCE;         /* trigger a doublecheck on startup */
-           else if (!strncmp(optarg, "reportonly", strlen(optarg)))
-               opt_store_doublecheck = DBLCHECK_REPORTONLY;    /* trigger a doublecheck that doesn't repair */
-           else
-               usage();
+           opt_store_doublecheck = 1;
            break;
        case 'V':
            vhost_mode = 1;
index 37f7f9666f24009ed98a5b713d750bf0138d8d67..5a75aabd4b321648d9c2c7d8c9520073ecb87ae0 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: store_rebuild.cc,v 1.73 2000/12/05 09:16:00 wessels Exp $
+ * $Id: store_rebuild.cc,v 1.74 2000/12/09 01:47:18 wessels Exp $
  *
  * DEBUG: section 20    Store Rebuild Routines
  * AUTHOR: Duane Wessels
@@ -73,8 +73,7 @@ storeCleanup(void *datanotused)
            debug(20, 1) ("  store_swap_size = %dk\n", store_swap_size);
            store_dirs_rebuilding--;
            assert(0 == store_dirs_rebuilding);
-           if (opt_store_doublecheck != DBLCHECK_NONE)
-               /* we want to assert here because the storeFScode should auto-clean the entries */
+           if (opt_store_doublecheck)
                assert(store_errors == 0);
            if (store_digest)
                storeDigestNoteStoreReady();
@@ -92,11 +91,9 @@ storeCleanup(void *datanotused)
             */
            if (e->swap_filen < 0)
                continue;
-           if (opt_store_doublecheck != DBLCHECK_NONE)
-               if (storeCleanupDoubleCheck(e)) {
-                   /* this should never happen as the storeFScode should auto-clean */
+           if (opt_store_doublecheck)
+               if (storeCleanupDoubleCheck(e))
                    store_errors++;
-               }
            EBIT_SET(e->flags, ENTRY_VALIDATED);
            /*
             * Only set the file bit if we know its a valid entry
@@ -124,8 +121,6 @@ storeRebuildComplete(struct _store_rebuild_data *dc)
     counts.invalid += dc->invalid;
     counts.badflags += dc->badflags;
     counts.bad_log_op += dc->bad_log_op;
-    counts.missingcount += dc->missingcount;
-    counts.filesizemismatchcount += dc->filesizemismatchcount;
     counts.zero_object_sz += dc->zero_object_sz;
     /*
      * When store_dirs_rebuilding == 1, it means we are done reading
@@ -144,10 +139,6 @@ storeRebuildComplete(struct _store_rebuild_data *dc)
     debug(20, 1) ("  %7d Objects cancelled.\n", counts.cancelcount);
     debug(20, 1) ("  %7d Duplicate URLs purged.\n", counts.dupcount);
     debug(20, 1) ("  %7d Swapfile clashes avoided.\n", counts.clashcount);
-    debug(20, 1) ("  %7d Missing files ignored.\n", counts.missingcount);
-    debug(20, 1) ("  %7d Incorrect length swapfiles %s.\n",
-       counts.filesizemismatchcount,
-       (opt_store_doublecheck == DBLCHECK_REPORTONLY) ? "ignored" : "unlinked");
     debug(20, 1) ("  Took %3.1f seconds (%6.1f objects/sec).\n", dt,
        (double) counts.objcount / (dt > 0.0 ? dt : 1.0));
     debug(20, 1) ("Beginning Validation Procedure\n");
index 6eeb3fbe9aa834fd3abeada36b193809b64ac73a..d41888cbe85f2757f7be90ea51d3e5a0e58ed711 100644 (file)
@@ -1,6 +1,6 @@
 
 /*
- * $Id: structs.h,v 1.366 2000/12/09 00:09:04 wessels Exp $
+ * $Id: structs.h,v 1.367 2000/12/09 01:47:19 wessels Exp $
  *
  *
  * SQUID Internet Object Cache  http://squid.nlanr.net/Squid/
@@ -1852,8 +1852,6 @@ struct _store_rebuild_data {
     int cancelcount;           /* # SWAP_LOG_DEL objects purged */
     int invalid;               /* # bad lines */
     int badflags;              /* # bad e->flags */
-    int missingcount;          /* # swapfiles not on disk */
-    int filesizemismatchcount; /* # swapfiles with a wrong size */
     int bad_log_op;
     int zero_object_sz;
 };