private DiskRangeList dr(int from, int to) { return new DiskRangeList(from, to); }
public void addOrMerge(long offset, long end, boolean doMerge, boolean doLogNew) { if (doMerge && tail != null && tail.merge(offset, end)) return; if (doLogNew) { LOG.debug("Creating new range; last range (which can include some previous adds) was " + tail); } DiskRangeList node = new DiskRangeList(offset, end); if (tail == null) { head = tail = node; } else { tail = tail.insertAfter(node); } }
syncThreadStart(cdlIn, cdlOut); while (rdmsDone.get() < 3) { DiskRangeList head = new DiskRangeList(0, offsetsToUse + 1); isFirstFile = !isFirstFile; long fileId = isFirstFile ? fn1 : fn2;
cache.putIncompleteCbs(fileKey1, new DiskRange[] { new DiskRangeList(0, 3) }, 0, null); cp.verifyEquals(1); DiskRangeList result = cache.getIncompleteCbs( fileKey1, new DiskRangeList(0, 3), 0, gotAllData); assertTrue(gotAllData.value); verifyResult(result, INCOMPLETE, 0, 3); cache.putIncompleteCbs(fileKey1, new DiskRange[] { new DiskRangeList(5, 6) }, 0, null); cp.verifyEquals(3); DiskRangeList ranges = new DiskRangeList(0, 3); ranges.insertAfter(new DiskRangeList(4, 6)); result = cache.getIncompleteCbs(fileKey1, ranges, 0, gotAllData); assertFalse(gotAllData.value); verifyResult(result, INCOMPLETE, 0, 3, DRL, 4, 6); ranges = new DiskRangeList(0, 3); ranges.insertAfter(new DiskRangeList(3, 5)).insertAfter(new DiskRangeList(5, 6)); result = cache.getIncompleteCbs(fileKey1, ranges, 0, gotAllData); assertFalse(gotAllData.value); verifyResult(result, INCOMPLETE, 0, 3, DRL, 3, 5, INCOMPLETE, 5, 6); result = cache.getIncompleteCbs(fileKey1, new DiskRangeList(5, 6), 0, gotAllData); assertTrue(gotAllData.value); verifyResult(result, INCOMPLETE, 5, 6); result = cache.getIncompleteCbs(fileKey1, new DiskRangeList(4, 5), 0, gotAllData); assertFalse(gotAllData.value); verifyResult(result, DRL, 4, 5);
syncThreadStart(cdlIn, cdlOut); while (rdmsDone.get() < 3) { DiskRangeList head = new DiskRangeList(0, offsetsToUse + 1); isFirstFile = !isFirstFile; long fileId = isFirstFile ? fn1 : fn2;
new DiskRangeList(offset, offset + si.getFooterLength()), 0, false);
@Override public int read(byte[] array, final int arrayOffset, final int len) throws IOException { long readStartPos = position; DiskRangeList drl = new DiskRangeList(readStartPos, readStartPos + len); DataCache.BooleanRef gotAllData = new DataCache.BooleanRef(); drl = cache.getFileData(fileKey, drl, 0, new DataCache.DiskRangeListFactory() {
DiskRangeList tail = new DiskRangeList(currentCached.getEnd(), currentNotCached.getEnd()); currentNotCached.insertPartAfter(currentCached); currentCached.insertAfter(tail);
public void addOrMerge(long offset, long end, boolean doMerge, boolean doLogNew) { if (doMerge && tail != null && tail.merge(offset, end)) return; if (doLogNew) { LOG.debug("Creating new range; last range (which can include some previous adds) was " + tail); } DiskRangeList node = new DiskRangeList(offset, end); if (tail == null) { head = tail = node; } else { tail = tail.insertAfter(node); } }
private void readAllDataStreams(StripeInformation stripe) throws IOException { long start = stripe.getIndexLength(); long end = start + stripe.getDataLength(); // explicitly trigger 1 big read DiskRangeList toRead = new DiskRangeList(start, end); bufferChunks = dataReader.readFileData(toRead, stripe.getOffset(), false); List<OrcProto.Stream> streamDescriptions = stripeFooter.getStreamsList(); createStreams(streamDescriptions, bufferChunks, included, codec, bufferSize, streams); }
private void readAllDataStreams(StripeInformation stripe) throws IOException { long start = stripe.getIndexLength(); long end = start + stripe.getDataLength(); // explicitly trigger 1 big read DiskRangeList toRead = new DiskRangeList(start, end); bufferChunks = dataReader.readFileData(toRead, stripe.getOffset(), false); List<OrcProto.Stream> streamDescriptions = stripeFooter.getStreamsList(); createStreams(streamDescriptions, bufferChunks, null, codec, bufferSize, streams); }
private void readAllDataStreams(StripeInformation stripe) throws IOException { long start = stripe.getIndexLength(); long end = start + stripe.getDataLength(); // explicitly trigger 1 big read DiskRangeList toRead = new DiskRangeList(start, end); bufferChunks = dataReader.readFileData(toRead, stripe.getOffset(), false); List<OrcProto.Stream> streamDescriptions = stripeFooter.getStreamsList(); createStreams(streamDescriptions, bufferChunks, included, codec, bufferSize, streams); }
private void readAllDataStreams(StripeInformation stripe) throws IOException { long start = stripe.getIndexLength(); long end = start + stripe.getDataLength(); // explicitly trigger 1 big read DiskRangeList toRead = new DiskRangeList(start, end); bufferChunks = dataReader.readFileData(toRead, stripe.getOffset(), false); List<OrcProto.Stream> streamDescriptions = stripeFooter.getStreamsList(); createStreams(streamDescriptions, bufferChunks, null, dataReader.getCompressionCodec(), bufferSize, streams); }
new DiskRangeList(offset, offset + si.getFooterLength()), 0, false);
DiskRangeList tail = new DiskRangeList(currentCached.getEnd(), currentNotCached.getEnd()); currentNotCached.insertPartAfter(currentCached); currentCached.insertAfter(tail);