@Override
public Reader getReader(ReaderConfigurator configurator, int partitionNumber, DiskPartitionAssignment assignment) throws IOException {
ReaderConfigurator subConfigurator = new BaseReaderConfigurator(
configurator,
configurator.getCacheNumBytesCapacity(),
configurator.getCacheNumItemsCapacity(),
configurator.getBufferReuseMaxSize(),
2);
return new CurlyReader(CurlyReader.getLatestBase(getTargetDirectory(assignment, partitionNumber)),
recordFileReadBufferBytes,
cueballStorageEngine.getReader(subConfigurator, partitionNumber, assignment),
subConfigurator.getCacheNumBytesCapacity(),
(int)subConfigurator.getCacheNumItemsCapacity(),
blockCompressionCodec,
offsetNumBytes,
offsetInBlockNumBytes,
false,
subConfigurator.getBufferReuseMaxSize());
}