public void logSargResult(int stripeIx, int rgCount) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(SARG_RESULT, stripeIx); log[offset + 1] = rgCount; this.offset += 2; }
public void logStartCol(int colIx) { if (log == null) return; int offset = this.offset; if (offset + 1 > log.length) return; log[offset] = makeIntPair(START_COL, colIx); this.offset += 1; }
public void logPartialUncompressedData(long partOffset, long candidateEnd, boolean fromCache) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(PARTIAL_UNCOMPRESSED_DATA, (int)(candidateEnd - partOffset)); log[offset + 1] = partOffset; this.offset += 2; }
public void logReadingStripe(int stripeIx, long stripeOffset, long length) { if (log == null) return; int offset = this.offset; if (offset + 3 > log.length) return; log[offset] = makeIntPair(READING_STRIPE, stripeIx); log[offset + 1] = stripeOffset; log[offset + 2] = length; this.offset += 3; }
public void logOrcCb(long cbStartOffset, int cbLength, boolean isUncompressed) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(ORC_CB, (cbLength << 1) | (isUncompressed ? 1 : 0)); log[offset + 1] = cbStartOffset; this.offset += 2; }
public void logTreeReaderNextVector(int idx) { if (log == null) return; int offset = this.offset; if (offset + 1 > log.length) return; log[offset] = makeIntPair(TREE_READER_NEXT_VECTOR, idx); this.offset += 1; }
public void logInvalidOrcCb(long cbStartOffset, long end) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(INVALID_ORC_CB, (int)(end - cbStartOffset)); log[offset + 1] = cbStartOffset; this.offset += 2; }
public void logStartRg(int rgIx) { if (log == null) return; int offset = this.offset; if (offset + 1 > log.length) return; log[offset] = makeIntPair(START_RG, rgIx); this.offset += 1; }
public void logUncompressedData(long dataOffset, long end) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(UNCOMPRESSED_DATA, (int)(end - dataOffset)); log[offset + 1] = dataOffset; this.offset += 2; }
public void logAddStream(int colIx, Stream.Kind streamKind, long streamOffset, long length, int indexIx, boolean isEntire) { if (log == null) return; int offset = this.offset; if (offset + 4 > log.length) return; log[offset] = makeIntPair(ADD_STREAM, colIx); log[offset + 1] = streamOffset; log[offset + 2] = makeIntPair((int)length, streamKind.ordinal()); log[offset + 3] = makeIntPair(indexIx, isEntire ? 1 : 0); this.offset += 4; }
public void logColumnRead(int colIx, int includedIx, ColumnEncoding.Kind kind) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(COLUMN_READ, colIx); log[offset + 1] = makeIntPair(includedIx, kind.ordinal()); this.offset += 2; }
public void logSkipStream(int colIx, Stream.Kind streamKind, long streamOffset, long length) { if (log == null) return; int offset = this.offset; if (offset + 3 > log.length) return; log[offset] = makeIntPair(SKIP_STREAM, colIx); log[offset + 1] = streamOffset; log[offset + 2] = makeIntPair((int)length, streamKind.ordinal()); this.offset += 3; }
public void logStartStream(Kind kind, long cOffset, long endCOffset, long unlockUntilCOffset) { if (log == null) return; int offset = this.offset; if (offset + 3 > log.length) return; log[offset] = makeIntPair(START_STREAM, kind.ordinal()); log[offset + 1] = cOffset; long unlockLen = unlockUntilCOffset - cOffset; int unlockLenToSave = unlockLen >= 0 && unlockLen < Integer.MAX_VALUE ? (int)unlockLen : Integer.MAX_VALUE; log[offset + 2] = makeIntPair(unlockLenToSave, (int)(endCOffset - cOffset)); this.offset += 3; }
public void logPartialCb(DiskRange current) { if (log == null) return; int offset = this.offset; if (offset + 4 > log.length) return; log[offset] = makeIntPair(PARTIAL_CB, 0); logRange(current, offset + 1); this.offset += 4; }
public void logCompositeOrcCb(int lastChunkTaken, int lastChunkRemaining, DiskRange cc) { if (log == null) return; int offset = this.offset; if (offset + 5 > log.length) return; log[offset] = makeIntPair(COMPOSITE_ORC_CB, lastChunkTaken); log[offset + 1] = lastChunkRemaining; logRange(cc, offset + 2); this.offset += 5; }
public void logStartStripeStream(Kind kind) { if (log == null) return; int offset = this.offset; if (offset + 1 > log.length) return; log[offset] = makeIntPair(START_STRIPE_STREAM, kind.ordinal()); this.offset += 1; }
public void logCacheCollision(DiskRange replacedChunk, MemoryBuffer replacementBuffer) { if (log == null) return; int offset = this.offset; if (offset + 4 > log.length) return; log[offset] = makeIntPair(CACHE_COLLISION, System.identityHashCode(replacementBuffer)); logRange(replacedChunk, offset + 1); this.offset += 4; }
public void logStartRead(DiskRangeList current) { if (log == null) return; int offset = this.offset; if (offset + 1 > log.length) return; log[offset] = makeIntPair(START_READ, current.hasData() ? System.identityHashCode(current.getData()) : 0); this.offset += 1; }
public void logValidUncompresseedChunk(int totalLength, DiskRange chunk) { if (log == null) return; int offset = this.offset; if (offset + 2 > log.length) return; log[offset] = makeIntPair(VALID_UNCOMPRESSEED_CHUNK, totalLength); log[offset + 1] = chunk.hasData() ? System.identityHashCode(chunk.getData()) : 0; this.offset += 2; }
public void logRanges(Object fileKey, long baseOffset, DiskRangeList range, RangesSrc src) { if (log == null) return; int offset = this.offset; if (offset + 3 > log.length) return; // At least the header should fit. log[offset + 1] = (fileKey instanceof Long) ? (long)fileKey : fileKey.hashCode(); log[offset + 2] = baseOffset; int elementCount = 0; int currentOffset = offset + 3; while (range != null && elementCount < MAX_ELEMENTS) { if (currentOffset + 3 > log.length) break; logRange(range, currentOffset); currentOffset += 3; ++elementCount; range = range.next; } log[offset] = makeIntPair(RANGES, (src.ordinal() << MAX_ELEMENT_BITS) | elementCount); this.offset = currentOffset; }