code: public long sizeInBytes()
      {
          long n = 0;
          for (CacheBucket bucket : cache.asMap().values())
              for (RandomAccessReader reader : bucket.queue)
                  n += reader.getTotalBufferSize();
          return n;
      }
docs: TODO: this method is unsafe, as it calls getTotalBufferSize() on items that can have been discarded