@Override public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env) { return new TimeSettingIterator(source.deepCopy(env), time); }
@Override public void seek(Range range, Collection<ByteSequence> columnFamilies, boolean inclusive) throws IOException { Range seekRange = IteratorUtil.maximizeStartKeyTimeStamp(range); seekRange = IteratorUtil.minimizeEndKeyTimeStamp(seekRange); source.seek(seekRange, columnFamilies, inclusive); this.range = range; while (hasTop() && range.beforeStartKey(getTopKey())) { next(); } }
@Override public boolean hasTop() { return source.hasTop() && !range.afterEndKey(getTopKey()); }
@Override public boolean hasTop() { return source.hasTop() && !range.afterEndKey(getTopKey()); }
iter = new TimeSettingIterator(iter, filesToCompact.get(mapFile).getTime());
@Override public void seek(Range range, Collection<ByteSequence> columnFamilies, boolean inclusive) throws IOException { Range seekRange = IteratorUtil.maximizeStartKeyTimeStamp(range); seekRange = IteratorUtil.minimizeEndKeyTimeStamp(seekRange); source.seek(seekRange, columnFamilies, inclusive); this.range = range; while (hasTop() && range.beforeStartKey(getTopKey())) { next(); } }
iter = new TimeSettingIterator(iter, value.getTime());
@Override public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env) { return new TimeSettingIterator(source.deepCopy(env), time); }
synchronized List<InterruptibleIterator> openFiles(Map<String,DataFileValue> files, boolean detachable) throws IOException { List<FileSKVIterator> newlyReservedReaders = openFiles(files.keySet()); ArrayList<InterruptibleIterator> iters = new ArrayList<InterruptibleIterator>(); for (FileSKVIterator reader : newlyReservedReaders) { String filename = getReservedReadeFilename(reader); InterruptibleIterator iter; if (detachable) { FileDataSource fds = new FileDataSource(filename, reader); dataSources.add(fds); SourceSwitchingIterator ssi = new SourceSwitchingIterator(fds); iter = new ProblemReportingIterator(tablet.getTableId().toString(), filename, continueOnFailure, ssi); } else { iter = new ProblemReportingIterator(tablet.getTableId().toString(), filename, continueOnFailure, reader); } if (files.get(filename).isTimeSet()) { iter = new TimeSettingIterator(iter, files.get(filename).getTime()); } iters.add(iter); } return iters; }
iter = new TimeSettingIterator(iter, filesToCompact.get(mapFile).getTime());
iter = new TimeSettingIterator(iter, value.getTime());
iter = new TimeSettingIterator(iter, filesToCompact.get(mapFile).getTime());