if(capacity < (metasize+dataSize)) {
// try to allocate less meta space, because we have sample data
metasize = METASIZE*(capacity/(perItem+METASIZE));
}
ByteBuffer reserved = source.duplicate();
reserved.mark();
LOG.info("reserved.remaining() = "+reserved.remaining());
LOG.info("reserved.size = "+metasize);
reserved.position(metasize);
kvbuffer = reserved.slice();
reserved.flip();