/*
- * $Id: store_dir.cc,v 1.82 1998/09/22 19:47:46 wessels Exp $
+ * $Id: store_dir.cc,v 1.83 1998/09/23 15:37:43 wessels Exp $
*
* DEBUG: section 47 Store Directory Routines
* AUTHOR: Duane Wessels
storeDirSelectSwapDir(void)
{
double least_used = 1.0;
+ double high = (double) Config.Swap.highWaterMark / 100.0;
+ double u;
int dirn;
int i, j;
SwapDir *SD;
for (i = 0; i < nconf; i++) {
diru[i] = 1.1;
SD = &Config.cacheSwap.swapDirs[i];
+ SD->flags.selected = 0;
if (SD->read_only)
continue;
- diru[i] = (double) SD->cur_size;
- diru[i] /= SD->max_size;
+ u = (double) SD->cur_size / SD->max_size;
+ if (u > high)
+ continue;
+ diru[i] = u;
}
for (j = 0; j < nleast; j++) {
dirq[j] = -1;
break;
dirq[j] = dirn;
diru[dirn] = 1.1;
+ /* set selected flag for debugging/cachemgr only */
+ Config.cacheSwap.swapDirs[dirn].flags.selected = 1;
}
/*
* Setup default return of 0 if no least found
percent(sfs.f_files - sfs.f_ffree, sfs.f_files));
}
#endif
+ storeAppendPrintf(sentry, "Flags:");
+ if (SD->flags.selected)
+ storeAppendPrintf(sentry, " SELECTED");
+ storeAppendPrintf(sentry, "\n");
}
}
/*
- * $Id: structs.h,v 1.233 1998/09/22 23:15:41 wessels Exp $
+ * $Id: structs.h,v 1.234 1998/09/23 15:37:44 wessels Exp $
*
*
* SQUID Internet Object Cache http://squid.nlanr.net/Squid/
int suggest;
fileMap *map;
int swaplog_fd;
+ struct {
+ unsigned int selected:1;
+ } flags;
};
struct _request_flags {