use std::env; use chrono::Local; use arrowbatch::{ proto::ArrowBatchTypes, reader::{ArrowBatchConfig, ArrowBatchContext, ArrowBatchSequentialReader} }; #[test] fn test_reader_incremental() { let config = ArrowBatchConfig { data_dir: "/data/arrow-data-full".to_string(), bucket_size: 10_000_000_u64, dump_size: 100_000_u64 }; env_logger::init(); let context = ArrowBatchContext::new(config); context.lock().unwrap().reload_on_disk_buckets(); let reader = ArrowBatchSequentialReader::new(1, 10_000_000_u64, context); for row in reader { let block_num = match row[1] { ArrowBatchTypes::U64(b) => b, _ => panic!("expected second column to be block num") }; let evm_hash = match &row[4] { ArrowBatchTypes::Checksum256(h) => h, _ => panic!("expected fifth column to be evm hash") }; if block_num % 1_000 == 0 { let now = Local::now(); println!("{} | {}: {}", now.format("%Y-%m-%dT%H:%M:%S%.3f"), block_num, evm_hash); } } }