/** * Get a scanner to scan over this StoreFile. * * @param cacheBlocks should this scanner cache blocks? * @param pread use pread (for highly concurrent small readers) * @param isCompaction is scanner being used for compaction? * @return a scanner */ public StoreFileScanner getStoreFileScanner(boolean cacheBlocks, boolean pread, boolean isCompaction, long readPt) { return new StoreFileScanner(this, getScanner(cacheBlocks, pread, isCompaction), !isCompaction, reader.hasMVCCInfo(), readPt); }
@SuppressWarnings("deprecation") public LocalIndexStoreFileScanner(IndexHalfStoreFileReader reader, boolean cacheBlocks, boolean pread, boolean isCompaction, long readPt, long scannerOrder, boolean canOptimizeForNonNullColumn) { super(reader, reader.getScanner(cacheBlocks, pread, isCompaction), !isCompaction, reader .getHFileReader().hasMVCCInfo(), readPt, scannerOrder, canOptimizeForNonNullColumn); this.reader = reader; this.changeBottomKeys = this.reader.getRegionInfo().getStartKey().length == 0 && this.reader.getSplitRow().length != this.reader.getOffset(); this.comparator = (CellComparatorImpl)getComparator(); }
@SuppressWarnings("deprecation") public LocalIndexStoreFileScanner(IndexHalfStoreFileReader reader, boolean cacheBlocks, boolean pread, boolean isCompaction, long readPt, long scannerOrder, boolean canOptimizeForNonNullColumn) { super(reader, reader.getScanner(cacheBlocks, pread, isCompaction), !isCompaction, reader .getHFileReader().hasMVCCInfo(), readPt, scannerOrder, canOptimizeForNonNullColumn); this.reader = reader; this.changeBottomKeys = this.reader.getRegionInfo().getStartKey().length == 0 && this.reader.getSplitRow().length != this.reader.getOffset(); this.comparator = (CellComparatorImpl)getComparator(); }
@SuppressWarnings("deprecation") public LocalIndexStoreFileScanner(IndexHalfStoreFileReader reader, boolean cacheBlocks, boolean pread, boolean isCompaction, long readPt, long scannerOrder, boolean canOptimizeForNonNullColumn) { super(reader, reader.getScanner(cacheBlocks, pread, isCompaction), !isCompaction, reader .getHFileReader().hasMVCCInfo(), readPt, scannerOrder, canOptimizeForNonNullColumn); this.reader = reader; this.changeBottomKeys = this.reader.getRegionInfo().getStartKey().length == 0 && this.reader.getSplitRow().length != this.reader.getOffset(); this.comparator = (CellComparatorImpl)getComparator(); }
/** * Get a scanner to scan over this StoreFile. * @param cacheBlocks should this scanner cache blocks? * @param pread use pread (for highly concurrent small readers) * @param isCompaction is scanner being used for compaction? * @param scannerOrder Order of this scanner relative to other scanners. See * {@link KeyValueScanner#getScannerOrder()}. * @param canOptimizeForNonNullColumn {@code true} if we can make sure there is no null column, * otherwise {@code false}. This is a hint for optimization. * @return a scanner */ public StoreFileScanner getStoreFileScanner(boolean cacheBlocks, boolean pread, boolean isCompaction, long readPt, long scannerOrder, boolean canOptimizeForNonNullColumn) { return new StoreFileScanner(this, getScanner(cacheBlocks, pread, isCompaction), !isCompaction, reader.hasMVCCInfo(), readPt, scannerOrder, canOptimizeForNonNullColumn); }