protected UserScanQueryMatcher(Scan scan, ScanInfo scanInfo, ColumnTracker columns, boolean hasNullColumn, long oldestUnexpiredTS, long now) { super(createStartKey(scan, scanInfo), scanInfo, columns, oldestUnexpiredTS, now); this.hasNullColumn = hasNullColumn; this.filter = scan.getFilter(); if (this.filter != null) { this.versionsAfterFilter = scan.isRaw() ? scan.getMaxVersions() : Math.min(scan.getMaxVersions(), scanInfo.getMaxVersions()); } else { this.versionsAfterFilter = 0; } this.stopRow = scan.getStopRow(); TimeRange timeRange = scan.getColumnFamilyTimeRange().get(scanInfo.getFamily()); if (timeRange == null) { this.tr = scan.getTimeRange(); } else { this.tr = timeRange; } }
if (!scan.hasFamilies()) { kvs = toKeyValue(row, data.get(row), scan.getTimeRange().getMin(), scan.getTimeRange().getMax(), scan.getMaxVersions()); } else { kvs = new ArrayList<KeyValue>(); byte[] value = data.get(row).get(family).get(qualifier).get(timestamp); kvs.add(new KeyValue(row, family, qualifier, timestamp, value)); if (kvs.size() == scan.getMaxVersions()) { break;
out.setStopRow(in.getStopRow()); out.setCaching(in.getCaching()); out.setMaxVersions(in.getMaxVersions()); for (Map.Entry<byte[], NavigableSet<byte[]>> family : in.getFamilyMap().entrySet()) {
stopRow = scan.getStopRow(); includeStopRow = scan.includeStopRow(); maxVersions = scan.getMaxVersions(); batch = scan.getBatch(); storeLimit = scan.getMaxResultsPerColumnFamily();
model.setBatch(batch); int maxVersions = scan.getMaxVersions(); if (maxVersions > 0) { model.setMaxVersions(maxVersions);
if (userScan != null) { if (userScan.isRaw()) { resultMaxVersion = userScan.getMaxVersions(); } else { resultMaxVersion = Math.min(userScan.getMaxVersions(), scanInfo.getMaxVersions());
assertEquals(scan.getMaxVersions(), desScan.getMaxVersions()); TimeRange tr = scan.getTimeRange(); TimeRange desTr = desScan.getTimeRange();
}; Scan scan = ExportUtils.getScanFromCommandLine(UTIL.getConfiguration(), args); assertEquals(version, scan.getMaxVersions()); assertEquals(startTime, scan.getTimeRange().getMin()); assertEquals(endTime, scan.getTimeRange().getMax()); assertEquals(version, scanWithLabels.getMaxVersions()); assertEquals(startTime, scanWithLabels.getTimeRange().getMin()); assertEquals(endTime, scanWithLabels.getTimeRange().getMax());
scanBuilder.setLoadColumnFamiliesOnDemand(loadColumnFamiliesOnDemand); scanBuilder.setMaxVersions(scan.getMaxVersions()); scan.getColumnFamilyTimeRange().forEach((cf, timeRange) -> { scanBuilder.addCfTimeRange(HBaseProtos.ColumnFamilyTimeRange.newBuilder()
scanBuilder.setLoadColumnFamiliesOnDemand(loadColumnFamiliesOnDemand); scanBuilder.setMaxVersions(scan.getMaxVersions()); scan.getColumnFamilyTimeRange().forEach((cf, timeRange) -> { scanBuilder.addCfTimeRange(HBaseProtos.ColumnFamilyTimeRange.newBuilder()
assertEquals(get.getLoadColumnFamiliesOnDemandValue(), scan.getLoadColumnFamiliesOnDemandValue()); assertEquals(get.getMaxResultsPerColumnFamily(), scan.getMaxResultsPerColumnFamily()); assertEquals(get.getMaxVersions(), scan.getMaxVersions()); assertEquals(get.getRowOffsetPerColumnFamily(), scan.getRowOffsetPerColumnFamily()); assertEquals(get.getTimeRange().getMin(), scan.getTimeRange().getMin());
assertEquals(scan.getMaxResultSize(), scanCopy.getMaxResultSize()); assertEquals(scan.getMaxResultsPerColumnFamily(), scanCopy.getMaxResultsPerColumnFamily()); assertEquals(scan.getMaxVersions(), scanCopy.getMaxVersions()); assertEquals(scan.getMvccReadPoint(), scanCopy.getMvccReadPoint()); assertEquals(scan.getPriority(), scanCopy.getPriority());
stopRow = scan.getStopRow(); includeStopRow = scan.includeStopRow(); maxVersions = scan.getMaxVersions(); batch = scan.getBatch(); storeLimit = scan.getMaxResultsPerColumnFamily();
kvs = toKeyValue(row, data.get(row), scan.getTimeRange().getMin(), scan.getTimeRange().getMax(), scan.getMaxVersions()); } else { kvs = new ArrayList<KeyValue>(); byte[] value = data.get(row).get(family).get(qualifier).get(timestamp); kvs.add(new KeyValue(row, family, qualifier, timestamp, value)); if(kvs.size() == scan.getMaxVersions()) { break;
@Override public void preScannerOpen(final Scan scan) { final int maxVersions = scan.getMaxVersions(); if ((maxVersions > 0) && (maxVersions < Integer.MAX_VALUE)) { scan.setAttribute(OLD_MAX_VERSIONS_KEY, ByteBuffer.allocate(4).putInt(maxVersions).array()); } scan.setMaxVersions(); }
scanBuilder.setLoadColumnFamiliesOnDemand(loadColumnFamiliesOnDemand); scanBuilder.setMaxVersions(scan.getMaxVersions()); scan.getColumnFamilyTimeRange().forEach((cf, timeRange) -> { scanBuilder.addCfTimeRange(HBaseProtos.ColumnFamilyTimeRange.newBuilder()
scanBuilder.setLoadColumnFamiliesOnDemand(loadColumnFamiliesOnDemand); scanBuilder.setMaxVersions(scan.getMaxVersions()); scan.getColumnFamilyTimeRange().forEach((cf, timeRange) -> { scanBuilder.addCfTimeRange(HBaseProtos.ColumnFamilyTimeRange.newBuilder()
assertEquals(get.getLoadColumnFamiliesOnDemandValue(), scan.getLoadColumnFamiliesOnDemandValue()); assertEquals(get.getMaxResultsPerColumnFamily(), scan.getMaxResultsPerColumnFamily()); assertEquals(get.getMaxVersions(), scan.getMaxVersions()); assertEquals(get.getRowOffsetPerColumnFamily(), scan.getRowOffsetPerColumnFamily()); assertEquals(get.getTimeRange().getMin(), scan.getTimeRange().getMin());
/** * Given a Scan, build a RowFilter that include matching columns * * @param scan a {@link org.apache.hadoop.hbase.client.Scan} object. * @param hooks a {@link com.google.cloud.bigtable.hbase.adapters.read.ReadHooks} object. * @return a {@link com.google.bigtable.v2.RowFilter} object. */ public Filters.Filter buildFilter(Scan scan, ReadHooks hooks) { ChainFilter chain = FILTERS.chain(); Optional<Filters.Filter> familyFilter = createColumnFamilyFilter(scan); if (familyFilter.isPresent()) { chain.filter(familyFilter.get()); } if (scan.getTimeRange() != null && !scan.getTimeRange().isAllTime()) { chain.filter(createTimeRangeFilter(scan.getTimeRange())); } if (scan.getMaxVersions() != Integer.MAX_VALUE) { chain.filter(createColumnLimitFilter(scan.getMaxVersions())); } Optional<Filters.Filter> userFilter = createUserFilter(scan, hooks); if (userFilter.isPresent()) { chain.filter(userFilter.get()); } return chain; }
assertEquals(scan.getMaxResultSize(), scanCopy.getMaxResultSize()); assertEquals(scan.getMaxResultsPerColumnFamily(), scanCopy.getMaxResultsPerColumnFamily()); assertEquals(scan.getMaxVersions(), scanCopy.getMaxVersions()); assertEquals(scan.getMvccReadPoint(), scanCopy.getMvccReadPoint()); assertEquals(scan.getPriority(), scanCopy.getPriority());