package writecache func (c *cache) estimateCacheSize() (uint64, uint64) { count, size := c.counter.CountSize() select { case c.sizeMetricsReporterQueue <- struct{}{}: default: } return count, size } func (c *cache) hasEnoughSpaceFS() bool { return c.hasEnoughSpace(c.maxObjectSize) } func (c *cache) hasEnoughSpace(objectSize uint64) bool { count, size := c.estimateCacheSize() if c.maxCacheCount > 0 && count+1 > c.maxCacheCount { return false } return c.maxCacheSize >= size+objectSize } func (c *cache) initCounters() { c.estimateCacheSize() }