···
return Either::Right(std::iter::empty());
403
-
let mut ts = CLOCK.now();
403
+
// let mut ts = CLOCK.now();
let map_block = move |(key, val)| {
let mut key_reader = Cursor::new(key);
let start_timestamp = key_reader.read_varint::<u64>()?;
407
-
let end_timestamp = key_reader.read_varint::<u64>()?;
407
+
// let end_timestamp = key_reader.read_varint::<u64>()?;
if start_timestamp < start_limit {
410
-
"skipped block with timestamps {start_timestamp}..{end_timestamp} because {start_limit} is greater"
410
+
// "skipped block with timestamps {start_timestamp}..{end_timestamp} because {start_limit} is greater"
414
-
tracing::info!("using block with timestamp {start_timestamp}..{end_timestamp}");
414
+
// tracing::info!("using block with timestamp {start_timestamp}..{end_timestamp}");
let decoder = handle::ItemDecoder::new(Cursor::new(val), start_timestamp)?;
418
-
"took {}ns to get block with size {}",
419
-
ts.elapsed().as_nanos(),
420
-
decoder.item_count()
418
+
// "took {}ns to get block with size {}",
419
+
// ts.elapsed().as_nanos(),
420
+
// decoder.item_count()
422
+
// ts = CLOCK.now();
.take_while(move |item| {
···
438
-
.map_while(move |res| res.map_err(AppError::from).and_then(map_block).transpose())
439
-
.collect::<Vec<_>>()
434
+
let blocks = handle
437
+
.map_while(move |res| res.map_err(AppError::from).and_then(map_block).transpose())
438
+
.collect::<Vec<_>>();
440
+
tracing::info!("returning {} blocks", blocks.len());
442
+
Either::Left(blocks.into_iter().rev().flatten().flatten())
pub fn tracking_since(&self) -> AppResult<u64> {