influxdb/compactor/tests/layouts/backfill.rs

3053 lines
182 KiB
Rust

//! layout tests for scenarios with large numbers of files
//!
//! See [crate::layout] module for detailed documentation
use data_types::CompactionLevel;
use iox_time::Time;
use std::time::Duration;
use crate::layouts::{layout_setup_builder, parquet_builder, run_layout_scenario, ONE_MB};
const MAX_DESIRED_FILE_SIZE: u64 = 100 * ONE_MB;
// This case simulates a backfill scenario with no existing data prior to the start of backfill.
// - the customer starts backfilling yesterday's data, writing at random times spread across the day.
// The result:
// - We get many L0s that each cover much of the day.
#[tokio::test]
async fn random_backfill_empty_partition() {
test_helpers::maybe_start_logging();
let setup = layout_setup_builder()
.await
.with_max_desired_file_size_bytes(MAX_DESIRED_FILE_SIZE)
.with_max_num_files_per_plan(20)
.build()
.await;
let num_tiny_l0_files = 50;
let l0_size = MAX_DESIRED_FILE_SIZE / 10;
// Assume the "day" is 1000 units of time, and spread the L0s across that
for i in 0..num_tiny_l0_files {
let i = i as i64;
// Create a bit of variety in the start/stop times, but mostly they cover most of the day.
let mut start_time = 50;
let mut end_time = 950;
match i % 4 {
0 => {
start_time += 26;
end_time -= 18;
}
1 => {
start_time -= 8;
end_time += 36;
}
2 => {
start_time += 123;
}
3 => {
end_time -= 321;
}
_ => {}
}
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(start_time)
.with_max_time(end_time)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(l0_size)
.with_max_l0_created_at(Time::from_timestamp_nanos(i + 1000)), // These files are created sequentially "today" with "yesterday's" data
)
.await;
}
// Add an extra file that doesn't overlap anything. Since this test case exercises high_l0_overlap_split, including an l0 file that overlaps nothing,
// exercises a code path in high_l0_overlap_split where a file has no overlaps.
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(0)
.with_max_time(1)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(l0_size)
.with_max_l0_created_at(Time::from_timestamp_nanos(999)),
)
.await;
insta::assert_yaml_snapshot!(
run_layout_scenario(&setup).await,
@r###"
---
- "**** Input Files "
- "L0, all files 10mb "
- "L0.1[76,932] 1us |------------------------------------L0.1------------------------------------| "
- "L0.2[42,986] 1us |----------------------------------------L0.2----------------------------------------| "
- "L0.3[173,950] 1us |--------------------------------L0.3--------------------------------| "
- "L0.4[50,629] 1us |-----------------------L0.4-----------------------| "
- "L0.5[76,932] 1us |------------------------------------L0.5------------------------------------| "
- "L0.6[42,986] 1us |----------------------------------------L0.6----------------------------------------| "
- "L0.7[173,950] 1.01us |--------------------------------L0.7--------------------------------| "
- "L0.8[50,629] 1.01us |-----------------------L0.8-----------------------| "
- "L0.9[76,932] 1.01us |------------------------------------L0.9------------------------------------| "
- "L0.10[42,986] 1.01us |---------------------------------------L0.10----------------------------------------| "
- "L0.11[173,950] 1.01us |-------------------------------L0.11--------------------------------| "
- "L0.12[50,629] 1.01us |----------------------L0.12-----------------------| "
- "L0.13[76,932] 1.01us |-----------------------------------L0.13------------------------------------| "
- "L0.14[42,986] 1.01us |---------------------------------------L0.14----------------------------------------| "
- "L0.15[173,950] 1.01us |-------------------------------L0.15--------------------------------| "
- "L0.16[50,629] 1.01us |----------------------L0.16-----------------------| "
- "L0.17[76,932] 1.02us |-----------------------------------L0.17------------------------------------| "
- "L0.18[42,986] 1.02us |---------------------------------------L0.18----------------------------------------| "
- "L0.19[173,950] 1.02us |-------------------------------L0.19--------------------------------| "
- "L0.20[50,629] 1.02us |----------------------L0.20-----------------------| "
- "L0.21[76,932] 1.02us |-----------------------------------L0.21------------------------------------| "
- "L0.22[42,986] 1.02us |---------------------------------------L0.22----------------------------------------| "
- "L0.23[173,950] 1.02us |-------------------------------L0.23--------------------------------| "
- "L0.24[50,629] 1.02us |----------------------L0.24-----------------------| "
- "L0.25[76,932] 1.02us |-----------------------------------L0.25------------------------------------| "
- "L0.26[42,986] 1.02us |---------------------------------------L0.26----------------------------------------| "
- "L0.27[173,950] 1.03us |-------------------------------L0.27--------------------------------| "
- "L0.28[50,629] 1.03us |----------------------L0.28-----------------------| "
- "L0.29[76,932] 1.03us |-----------------------------------L0.29------------------------------------| "
- "L0.30[42,986] 1.03us |---------------------------------------L0.30----------------------------------------| "
- "L0.31[173,950] 1.03us |-------------------------------L0.31--------------------------------| "
- "L0.32[50,629] 1.03us |----------------------L0.32-----------------------| "
- "L0.33[76,932] 1.03us |-----------------------------------L0.33------------------------------------| "
- "L0.34[42,986] 1.03us |---------------------------------------L0.34----------------------------------------| "
- "L0.35[173,950] 1.03us |-------------------------------L0.35--------------------------------| "
- "L0.36[50,629] 1.03us |----------------------L0.36-----------------------| "
- "L0.37[76,932] 1.04us |-----------------------------------L0.37------------------------------------| "
- "L0.38[42,986] 1.04us |---------------------------------------L0.38----------------------------------------| "
- "L0.39[173,950] 1.04us |-------------------------------L0.39--------------------------------| "
- "L0.40[50,629] 1.04us |----------------------L0.40-----------------------| "
- "L0.41[76,932] 1.04us |-----------------------------------L0.41------------------------------------| "
- "L0.42[42,986] 1.04us |---------------------------------------L0.42----------------------------------------| "
- "L0.43[173,950] 1.04us |-------------------------------L0.43--------------------------------| "
- "L0.44[50,629] 1.04us |----------------------L0.44-----------------------| "
- "L0.45[76,932] 1.04us |-----------------------------------L0.45------------------------------------| "
- "L0.46[42,986] 1.05us |---------------------------------------L0.46----------------------------------------| "
- "L0.47[173,950] 1.05us |-------------------------------L0.47--------------------------------| "
- "L0.48[50,629] 1.05us |----------------------L0.48-----------------------| "
- "L0.49[76,932] 1.05us |-----------------------------------L0.49------------------------------------| "
- "L0.50[42,986] 1.05us |---------------------------------------L0.50----------------------------------------| "
- "L0.51[0,1] 999ns |L0.51| "
- "**** Simulation run 0, type=compact(ManySmallFiles). 1 Input Files, 10mb total:"
- "L0, all files 10mb "
- "L0.51[0,1] 999ns |-----------------------------------------L0.51------------------------------------------|"
- "**** 1 Output Files (parquet_file_id not yet assigned), 10mb total:"
- "L0, all files 10mb "
- "L0.?[0,1] 999ns |------------------------------------------L0.?------------------------------------------|"
- "Committing partition 1:"
- " Soft Deleting 1 files: L0.51"
- " Creating 1 files"
- "**** Simulation run 1, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[514]). 20 Input Files, 200mb total:"
- "L0, all files 10mb "
- "L0.1[76,932] 1us |-------------------------------------L0.1--------------------------------------| "
- "L0.2[42,986] 1us |------------------------------------------L0.2------------------------------------------|"
- "L0.3[173,950] 1us |----------------------------------L0.3----------------------------------| "
- "L0.4[50,629] 1us |------------------------L0.4-------------------------| "
- "L0.5[76,932] 1us |-------------------------------------L0.5--------------------------------------| "
- "L0.6[42,986] 1us |------------------------------------------L0.6------------------------------------------|"
- "L0.7[173,950] 1.01us |----------------------------------L0.7----------------------------------| "
- "L0.8[50,629] 1.01us |------------------------L0.8-------------------------| "
- "L0.9[76,932] 1.01us |-------------------------------------L0.9--------------------------------------| "
- "L0.10[42,986] 1.01us |-----------------------------------------L0.10------------------------------------------|"
- "L0.11[173,950] 1.01us |---------------------------------L0.11----------------------------------| "
- "L0.12[50,629] 1.01us |------------------------L0.12------------------------| "
- "L0.13[76,932] 1.01us |-------------------------------------L0.13-------------------------------------| "
- "L0.14[42,986] 1.01us |-----------------------------------------L0.14------------------------------------------|"
- "L0.15[173,950] 1.01us |---------------------------------L0.15----------------------------------| "
- "L0.16[50,629] 1.01us |------------------------L0.16------------------------| "
- "L0.17[76,932] 1.02us |-------------------------------------L0.17-------------------------------------| "
- "L0.18[42,986] 1.02us |-----------------------------------------L0.18------------------------------------------|"
- "L0.19[173,950] 1.02us |---------------------------------L0.19----------------------------------| "
- "L0.20[50,629] 1.02us |------------------------L0.20------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 200mb total:"
- "L0, all files 100mb "
- "L0.?[42,514] 1.02us |-------------------L0.?--------------------| "
- "L0.?[515,986] 1.02us |-------------------L0.?-------------------| "
- "Committing partition 1:"
- " Soft Deleting 20 files: L0.1, L0.2, L0.3, L0.4, L0.5, L0.6, L0.7, L0.8, L0.9, L0.10, L0.11, L0.12, L0.13, L0.14, L0.15, L0.16, L0.17, L0.18, L0.19, L0.20"
- " Creating 2 files"
- "**** Simulation run 2, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[514]). 20 Input Files, 200mb total:"
- "L0, all files 10mb "
- "L0.21[76,932] 1.02us |-------------------------------------L0.21-------------------------------------| "
- "L0.22[42,986] 1.02us |-----------------------------------------L0.22------------------------------------------|"
- "L0.23[173,950] 1.02us |---------------------------------L0.23----------------------------------| "
- "L0.24[50,629] 1.02us |------------------------L0.24------------------------| "
- "L0.25[76,932] 1.02us |-------------------------------------L0.25-------------------------------------| "
- "L0.26[42,986] 1.02us |-----------------------------------------L0.26------------------------------------------|"
- "L0.27[173,950] 1.03us |---------------------------------L0.27----------------------------------| "
- "L0.28[50,629] 1.03us |------------------------L0.28------------------------| "
- "L0.29[76,932] 1.03us |-------------------------------------L0.29-------------------------------------| "
- "L0.30[42,986] 1.03us |-----------------------------------------L0.30------------------------------------------|"
- "L0.31[173,950] 1.03us |---------------------------------L0.31----------------------------------| "
- "L0.32[50,629] 1.03us |------------------------L0.32------------------------| "
- "L0.33[76,932] 1.03us |-------------------------------------L0.33-------------------------------------| "
- "L0.34[42,986] 1.03us |-----------------------------------------L0.34------------------------------------------|"
- "L0.35[173,950] 1.03us |---------------------------------L0.35----------------------------------| "
- "L0.36[50,629] 1.03us |------------------------L0.36------------------------| "
- "L0.37[76,932] 1.04us |-------------------------------------L0.37-------------------------------------| "
- "L0.38[42,986] 1.04us |-----------------------------------------L0.38------------------------------------------|"
- "L0.39[173,950] 1.04us |---------------------------------L0.39----------------------------------| "
- "L0.40[50,629] 1.04us |------------------------L0.40------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 200mb total:"
- "L0, all files 100mb "
- "L0.?[42,514] 1.04us |-------------------L0.?--------------------| "
- "L0.?[515,986] 1.04us |-------------------L0.?-------------------| "
- "Committing partition 1:"
- " Soft Deleting 20 files: L0.21, L0.22, L0.23, L0.24, L0.25, L0.26, L0.27, L0.28, L0.29, L0.30, L0.31, L0.32, L0.33, L0.34, L0.35, L0.36, L0.37, L0.38, L0.39, L0.40"
- " Creating 2 files"
- "**** Simulation run 3, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.41[76,932] 1.04us |-------------------------------------L0.41-------------------------------------| "
- "L0.42[42,986] 1.04us |-----------------------------------------L0.42------------------------------------------|"
- "L0.43[173,950] 1.04us |---------------------------------L0.43----------------------------------| "
- "L0.44[50,629] 1.04us |------------------------L0.44------------------------| "
- "L0.45[76,932] 1.04us |-------------------------------------L0.45-------------------------------------| "
- "L0.46[42,986] 1.05us |-----------------------------------------L0.46------------------------------------------|"
- "L0.47[173,950] 1.05us |---------------------------------L0.47----------------------------------| "
- "L0.48[50,629] 1.05us |------------------------L0.48------------------------| "
- "L0.49[76,932] 1.05us |-------------------------------------L0.49-------------------------------------| "
- "L0.50[42,986] 1.05us |-----------------------------------------L0.50------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.05us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.05us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.41, L0.42, L0.43, L0.44, L0.45, L0.46, L0.47, L0.48, L0.49, L0.50"
- " Creating 2 files"
- "**** Simulation run 4, type=split(HighL0OverlapSingleFile)(split_times=[670]). 1 Input Files, 100mb total:"
- "L0, all files 100mb "
- "L0.54[515,986] 1.02us |-----------------------------------------L0.54------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[515,670] 1.02us 33mb|-----------L0.?------------| "
- "L0.?[671,986] 1.02us 67mb |---------------------------L0.?---------------------------| "
- "**** Simulation run 5, type=split(HighL0OverlapSingleFile)(split_times=[356]). 1 Input Files, 100mb total:"
- "L0, all files 100mb "
- "L0.53[42,514] 1.02us |-----------------------------------------L0.53------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,356] 1.02us 67mb |--------------------------L0.?---------------------------| "
- "L0.?[357,514] 1.02us 33mb |-----------L0.?------------| "
- "**** Simulation run 6, type=split(HighL0OverlapSingleFile)(split_times=[670]). 1 Input Files, 100mb total:"
- "L0, all files 100mb "
- "L0.56[515,986] 1.04us |-----------------------------------------L0.56------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[515,670] 1.04us 33mb|-----------L0.?------------| "
- "L0.?[671,986] 1.04us 67mb |---------------------------L0.?---------------------------| "
- "**** Simulation run 7, type=split(HighL0OverlapSingleFile)(split_times=[356]). 1 Input Files, 100mb total:"
- "L0, all files 100mb "
- "L0.55[42,514] 1.04us |-----------------------------------------L0.55------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,356] 1.04us 67mb |--------------------------L0.?---------------------------| "
- "L0.?[357,514] 1.04us 33mb |-----------L0.?------------| "
- "**** Simulation run 8, type=split(HighL0OverlapSingleFile)(split_times=[356, 670]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.57[42,797] 1.05us |-----------------------------------------L0.57------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,356] 1.05us 33mb |---------------L0.?----------------| "
- "L0.?[357,670] 1.05us 33mb |---------------L0.?----------------| "
- "L0.?[671,797] 1.05us 14mb |----L0.?-----| "
- "Committing partition 1:"
- " Soft Deleting 5 files: L0.53, L0.54, L0.55, L0.56, L0.57"
- " Creating 11 files"
- "**** Simulation run 9, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[357, 714]). 6 Input Files, 277mb total:"
- "L0 "
- "L0.52[0,1] 999ns 10mb |L0.52| "
- "L0.61[42,356] 1.02us 67mb |----------L0.61-----------| "
- "L0.62[357,514] 1.02us 33mb |---L0.62----| "
- "L0.59[515,670] 1.02us 33mb |---L0.59----| "
- "L0.60[671,986] 1.02us 67mb |----------L0.60-----------| "
- "L0.65[42,356] 1.04us 67mb |----------L0.65-----------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 277mb total:"
- "L1 "
- "L1.?[0,357] 1.04us 100mb |-------------L1.?-------------| "
- "L1.?[358,714] 1.04us 100mb |-------------L1.?-------------| "
- "L1.?[715,986] 1.04us 77mb |---------L1.?---------| "
- "Committing partition 1:"
- " Soft Deleting 6 files: L0.52, L0.59, L0.60, L0.61, L0.62, L0.65"
- " Creating 3 files"
- "**** Simulation run 10, type=split(ReduceOverlap)(split_times=[714]). 1 Input Files, 67mb total:"
- "L0, all files 67mb "
- "L0.64[671,986] 1.04us |-----------------------------------------L0.64------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 67mb total:"
- "L0 "
- "L0.?[671,714] 1.04us 9mb |---L0.?---| "
- "L0.?[715,986] 1.04us 58mb |-----------------------------------L0.?------------------------------------| "
- "**** Simulation run 11, type=split(ReduceOverlap)(split_times=[357]). 1 Input Files, 33mb total:"
- "L0, all files 33mb "
- "L0.66[357,514] 1.04us |-----------------------------------------L0.66------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 33mb total:"
- "L0 "
- "L0.?[357,357] 1.04us 0b |L0.?| "
- "L0.?[358,514] 1.04us 33mb|-----------------------------------------L0.?------------------------------------------| "
- "**** Simulation run 12, type=split(ReduceOverlap)(split_times=[714]). 1 Input Files, 14mb total:"
- "L0, all files 14mb "
- "L0.69[671,797] 1.05us |-----------------------------------------L0.69------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 14mb total:"
- "L0 "
- "L0.?[671,714] 1.05us 5mb |------------L0.?------------| "
- "L0.?[715,797] 1.05us 9mb |--------------------------L0.?--------------------------| "
- "**** Simulation run 13, type=split(ReduceOverlap)(split_times=[357]). 1 Input Files, 33mb total:"
- "L0, all files 33mb "
- "L0.68[357,670] 1.05us |-----------------------------------------L0.68------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 33mb total:"
- "L0 "
- "L0.?[357,357] 1.05us 0b |L0.?| "
- "L0.?[358,670] 1.05us 33mb|-----------------------------------------L0.?------------------------------------------| "
- "Committing partition 1:"
- " Soft Deleting 4 files: L0.64, L0.66, L0.68, L0.69"
- " Creating 8 files"
- "**** Simulation run 14, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[260, 520]). 6 Input Files, 276mb total:"
- "L0 "
- "L0.75[357,357] 1.04us 0b |L0.75| "
- "L0.76[358,514] 1.04us 33mb |------L0.76------| "
- "L0.63[515,670] 1.04us 33mb |------L0.63------| "
- "L0.73[671,714] 1.04us 9mb |L0.73|"
- "L1 "
- "L1.70[0,357] 1.04us 100mb|-------------------L1.70-------------------| "
- "L1.71[358,714] 1.04us 100mb |------------------L1.71-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 276mb total:"
- "L1 "
- "L1.?[0,260] 1.04us 100mb |-------------L1.?-------------| "
- "L1.?[261,520] 1.04us 100mb |-------------L1.?-------------| "
- "L1.?[521,714] 1.04us 75mb |---------L1.?---------| "
- "Committing partition 1:"
- " Soft Deleting 6 files: L0.63, L1.70, L1.71, L0.73, L0.75, L0.76"
- " Creating 3 files"
- "**** Simulation run 15, type=split(ReduceOverlap)(split_times=[520]). 1 Input Files, 33mb total:"
- "L0, all files 33mb "
- "L0.80[358,670] 1.05us |-----------------------------------------L0.80------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 33mb total:"
- "L0 "
- "L0.?[358,520] 1.05us 17mb|--------------------L0.?--------------------| "
- "L0.?[521,670] 1.05us 16mb |------------------L0.?------------------| "
- "**** Simulation run 16, type=split(ReduceOverlap)(split_times=[260]). 1 Input Files, 33mb total:"
- "L0, all files 33mb "
- "L0.67[42,356] 1.05us |-----------------------------------------L0.67------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 33mb total:"
- "L0 "
- "L0.?[42,260] 1.05us 23mb |----------------------------L0.?----------------------------| "
- "L0.?[261,356] 1.05us 10mb |----------L0.?-----------| "
- "Committing partition 1:"
- " Soft Deleting 2 files: L0.67, L0.80"
- " Creating 4 files"
- "**** Simulation run 17, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[917]). 2 Input Files, 134mb total:"
- "L0 "
- "L0.74[715,986] 1.04us 58mb|-----------------------------------------L0.74------------------------------------------|"
- "L1 "
- "L1.72[715,986] 1.04us 77mb|-----------------------------------------L1.72------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 134mb total:"
- "L1 "
- "L1.?[715,917] 1.04us 100mb|------------------------------L1.?-------------------------------| "
- "L1.?[918,986] 1.04us 34mb |--------L1.?--------| "
- "Committing partition 1:"
- " Soft Deleting 2 files: L1.72, L0.74"
- " Creating 2 files"
- "**** Simulation run 18, type=split(ReduceOverlap)(split_times=[917]). 1 Input Files, 20mb total:"
- "L0, all files 20mb "
- "L0.58[798,986] 1.05us |-----------------------------------------L0.58------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 20mb total:"
- "L0 "
- "L0.?[798,917] 1.05us 13mb|-------------------------L0.?-------------------------| "
- "L0.?[918,986] 1.05us 7mb |-------------L0.?-------------| "
- "Committing partition 1:"
- " Soft Deleting 1 files: L0.58"
- " Creating 2 files"
- "**** Simulation run 19, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[208, 416]). 6 Input Files, 251mb total:"
- "L0 "
- "L0.86[42,260] 1.05us 23mb |---------------L0.86---------------| "
- "L0.87[261,356] 1.05us 10mb |----L0.87-----| "
- "L0.79[357,357] 1.05us 0b |L0.79| "
- "L0.84[358,520] 1.05us 17mb |----------L0.84-----------| "
- "L1 "
- "L1.81[0,260] 1.04us 100mb|-------------------L1.81-------------------| "
- "L1.82[261,520] 1.04us 100mb |------------------L1.82-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 251mb total:"
- "L1 "
- "L1.?[0,208] 1.05us 100mb |---------------L1.?---------------| "
- "L1.?[209,416] 1.05us 100mb |--------------L1.?---------------| "
- "L1.?[417,520] 1.05us 51mb |-----L1.?------| "
- "Committing partition 1:"
- " Soft Deleting 6 files: L0.79, L1.81, L1.82, L0.84, L0.86, L0.87"
- " Creating 3 files"
- "**** Simulation run 20, type=split(CompactAndSplitOutput(TotalSizeLessThanMaxCompactSize))(split_times=[701, 881]). 8 Input Files, 259mb total:"
- "L0 "
- "L0.91[918,986] 1.05us 7mb |---L0.91---| "
- "L0.90[798,917] 1.05us 13mb |--------L0.90--------| "
- "L0.78[715,797] 1.05us 9mb |----L0.78----| "
- "L0.77[671,714] 1.05us 5mb |L0.77-| "
- "L0.85[521,670] 1.05us 16mb|----------L0.85-----------| "
- "L1 "
- "L1.89[918,986] 1.04us 34mb |---L1.89---| "
- "L1.88[715,917] 1.04us 100mb |----------------L1.88----------------| "
- "L1.83[521,714] 1.04us 75mb|---------------L1.83---------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 259mb total:"
- "L1 "
- "L1.?[521,701] 1.05us 100mb|--------------L1.?--------------| "
- "L1.?[702,881] 1.05us 100mb |--------------L1.?--------------| "
- "L1.?[882,986] 1.05us 59mb |-------L1.?-------| "
- "Committing partition 1:"
- " Soft Deleting 8 files: L0.77, L0.78, L1.83, L0.85, L1.88, L1.89, L0.90, L0.91"
- " Creating 3 files"
- "**** Simulation run 21, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[406, 603]). 3 Input Files, 251mb total:"
- "L1 "
- "L1.93[209,416] 1.05us 100mb|---------------L1.93---------------| "
- "L1.94[417,520] 1.05us 51mb |-----L1.94------| "
- "L1.95[521,701] 1.05us 100mb |------------L1.95-------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 251mb total:"
- "L2 "
- "L2.?[209,406] 1.05us 100mb|---------------L2.?---------------| "
- "L2.?[407,603] 1.05us 100mb |--------------L2.?---------------| "
- "L2.?[604,701] 1.05us 50mb |-----L2.?------| "
- "Committing partition 1:"
- " Soft Deleting 3 files: L1.93, L1.94, L1.95"
- " Upgrading 1 files level to CompactionLevel::L2: L1.92"
- " Creating 3 files"
- "**** Simulation run 22, type=split(CompactAndSplitOutput(TotalSizeLessThanMaxCompactSize))(split_times=[881]). 2 Input Files, 159mb total:"
- "L1 "
- "L1.97[882,986] 1.05us 59mb |------------L1.97-------------| "
- "L1.96[702,881] 1.05us 100mb|------------------------L1.96-------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 159mb total:"
- "L2 "
- "L2.?[702,881] 1.05us 100mb|-------------------------L2.?-------------------------| "
- "L2.?[882,986] 1.05us 59mb |-------------L2.?-------------| "
- "Committing partition 1:"
- " Soft Deleting 2 files: L1.96, L1.97"
- " Creating 2 files"
- "**** Final Output Files (2.76gb written)"
- "L2 "
- "L2.92[0,208] 1.05us 100mb|-----L2.92------| "
- "L2.98[209,406] 1.05us 100mb |-----L2.98-----| "
- "L2.99[407,603] 1.05us 100mb |-----L2.99-----| "
- "L2.100[604,701] 1.05us 50mb |L2.100| "
- "L2.101[702,881] 1.05us 100mb |----L2.101----| "
- "L2.102[882,986] 1.05us 59mb |L2.102-| "
"###
);
}
// This case simulates a backfill scenario with existing data prior to the start of backfill.
// - we have L2s covering the whole time range of yesterday
// - the customer starts backfilling more of yesterday's data, writing at random times spread across the day.
// The result:
// - We start with compacted L2s covering the day, then get many L0s that each cover much of the day.
#[tokio::test]
async fn random_backfill_over_l2s() {
test_helpers::maybe_start_logging();
let setup = layout_setup_builder()
.await
// compact at most 10 L0 files per plan
.with_max_num_files_per_plan(10)
.with_max_desired_file_size_bytes(MAX_DESIRED_FILE_SIZE)
.with_partition_timeout(Duration::from_secs(10))
.build()
.await;
let day = 1000;
let num_l2_files = 10;
let l2_time = day / num_l2_files;
let num_tiny_l0_files = 50;
let l2_size = MAX_DESIRED_FILE_SIZE;
let l0_size = MAX_DESIRED_FILE_SIZE / 10;
for i in 0..num_l2_files {
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(i * l2_time)
.with_max_time((i + 1) * l2_time - 1)
.with_compaction_level(CompactionLevel::Final)
.with_file_size_bytes(l2_size)
.with_max_l0_created_at(Time::from_timestamp_nanos((i + 1) * l2_time - 1)), // These files are created sequentially "yesterday" with "yesterday's" data
)
.await;
}
// Assume the "day" is 1000 units of time, make the L0s span most of the day, with a little variability.
for i in 0..num_tiny_l0_files {
let i = i as i64;
let mut start_time = 50;
let mut end_time = 950;
match i % 4 {
0 => {
start_time += 26;
end_time -= 18;
}
1 => {
start_time -= 8;
end_time += 36;
}
2 => {
start_time += 123;
}
3 => {
end_time -= 321;
}
_ => {}
}
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(start_time)
.with_max_time(end_time)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(l0_size)
.with_max_l0_created_at(Time::from_timestamp_nanos(i + 1000)), // These files are created sequentially "today" with "yesterday's" data
)
.await;
}
insta::assert_yaml_snapshot!(
run_layout_scenario(&setup).await,
@r###"
---
- "**** Input Files "
- "L0 "
- "L0.11[76,932] 1us 10mb |-----------------------------------L0.11-----------------------------------| "
- "L0.12[42,986] 1us 10mb |---------------------------------------L0.12---------------------------------------| "
- "L0.13[173,950] 1us 10mb |-------------------------------L0.13--------------------------------| "
- "L0.14[50,629] 1us 10mb |----------------------L0.14-----------------------| "
- "L0.15[76,932] 1us 10mb |-----------------------------------L0.15-----------------------------------| "
- "L0.16[42,986] 1us 10mb |---------------------------------------L0.16---------------------------------------| "
- "L0.17[173,950] 1.01us 10mb |-------------------------------L0.17--------------------------------| "
- "L0.18[50,629] 1.01us 10mb |----------------------L0.18-----------------------| "
- "L0.19[76,932] 1.01us 10mb |-----------------------------------L0.19-----------------------------------| "
- "L0.20[42,986] 1.01us 10mb |---------------------------------------L0.20---------------------------------------| "
- "L0.21[173,950] 1.01us 10mb |-------------------------------L0.21--------------------------------| "
- "L0.22[50,629] 1.01us 10mb |----------------------L0.22-----------------------| "
- "L0.23[76,932] 1.01us 10mb |-----------------------------------L0.23-----------------------------------| "
- "L0.24[42,986] 1.01us 10mb |---------------------------------------L0.24---------------------------------------| "
- "L0.25[173,950] 1.01us 10mb |-------------------------------L0.25--------------------------------| "
- "L0.26[50,629] 1.01us 10mb |----------------------L0.26-----------------------| "
- "L0.27[76,932] 1.02us 10mb |-----------------------------------L0.27-----------------------------------| "
- "L0.28[42,986] 1.02us 10mb |---------------------------------------L0.28---------------------------------------| "
- "L0.29[173,950] 1.02us 10mb |-------------------------------L0.29--------------------------------| "
- "L0.30[50,629] 1.02us 10mb |----------------------L0.30-----------------------| "
- "L0.31[76,932] 1.02us 10mb |-----------------------------------L0.31-----------------------------------| "
- "L0.32[42,986] 1.02us 10mb |---------------------------------------L0.32---------------------------------------| "
- "L0.33[173,950] 1.02us 10mb |-------------------------------L0.33--------------------------------| "
- "L0.34[50,629] 1.02us 10mb |----------------------L0.34-----------------------| "
- "L0.35[76,932] 1.02us 10mb |-----------------------------------L0.35-----------------------------------| "
- "L0.36[42,986] 1.02us 10mb |---------------------------------------L0.36---------------------------------------| "
- "L0.37[173,950] 1.03us 10mb |-------------------------------L0.37--------------------------------| "
- "L0.38[50,629] 1.03us 10mb |----------------------L0.38-----------------------| "
- "L0.39[76,932] 1.03us 10mb |-----------------------------------L0.39-----------------------------------| "
- "L0.40[42,986] 1.03us 10mb |---------------------------------------L0.40---------------------------------------| "
- "L0.41[173,950] 1.03us 10mb |-------------------------------L0.41--------------------------------| "
- "L0.42[50,629] 1.03us 10mb |----------------------L0.42-----------------------| "
- "L0.43[76,932] 1.03us 10mb |-----------------------------------L0.43-----------------------------------| "
- "L0.44[42,986] 1.03us 10mb |---------------------------------------L0.44---------------------------------------| "
- "L0.45[173,950] 1.03us 10mb |-------------------------------L0.45--------------------------------| "
- "L0.46[50,629] 1.03us 10mb |----------------------L0.46-----------------------| "
- "L0.47[76,932] 1.04us 10mb |-----------------------------------L0.47-----------------------------------| "
- "L0.48[42,986] 1.04us 10mb |---------------------------------------L0.48---------------------------------------| "
- "L0.49[173,950] 1.04us 10mb |-------------------------------L0.49--------------------------------| "
- "L0.50[50,629] 1.04us 10mb |----------------------L0.50-----------------------| "
- "L0.51[76,932] 1.04us 10mb |-----------------------------------L0.51-----------------------------------| "
- "L0.52[42,986] 1.04us 10mb |---------------------------------------L0.52---------------------------------------| "
- "L0.53[173,950] 1.04us 10mb |-------------------------------L0.53--------------------------------| "
- "L0.54[50,629] 1.04us 10mb |----------------------L0.54-----------------------| "
- "L0.55[76,932] 1.04us 10mb |-----------------------------------L0.55-----------------------------------| "
- "L0.56[42,986] 1.05us 10mb |---------------------------------------L0.56---------------------------------------| "
- "L0.57[173,950] 1.05us 10mb |-------------------------------L0.57--------------------------------| "
- "L0.58[50,629] 1.05us 10mb |----------------------L0.58-----------------------| "
- "L0.59[76,932] 1.05us 10mb |-----------------------------------L0.59-----------------------------------| "
- "L0.60[42,986] 1.05us 10mb |---------------------------------------L0.60---------------------------------------| "
- "L2 "
- "L2.1[0,99] 99ns 100mb |-L2.1-| "
- "L2.2[100,199] 199ns 100mb |-L2.2-| "
- "L2.3[200,299] 299ns 100mb |-L2.3-| "
- "L2.4[300,399] 399ns 100mb |-L2.4-| "
- "L2.5[400,499] 499ns 100mb |-L2.5-| "
- "L2.6[500,599] 599ns 100mb |-L2.6-| "
- "L2.7[600,699] 699ns 100mb |-L2.7-| "
- "L2.8[700,799] 799ns 100mb |-L2.8-| "
- "L2.9[800,899] 899ns 100mb |-L2.9-| "
- "L2.10[900,999] 999ns 100mb |L2.10-| "
- "**** Simulation run 0, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.11[76,932] 1us |-------------------------------------L0.11-------------------------------------| "
- "L0.12[42,986] 1us |-----------------------------------------L0.12------------------------------------------|"
- "L0.13[173,950] 1us |---------------------------------L0.13----------------------------------| "
- "L0.14[50,629] 1us |------------------------L0.14------------------------| "
- "L0.15[76,932] 1us |-------------------------------------L0.15-------------------------------------| "
- "L0.16[42,986] 1us |-----------------------------------------L0.16------------------------------------------|"
- "L0.17[173,950] 1.01us |---------------------------------L0.17----------------------------------| "
- "L0.18[50,629] 1.01us |------------------------L0.18------------------------| "
- "L0.19[76,932] 1.01us |-------------------------------------L0.19-------------------------------------| "
- "L0.20[42,986] 1.01us |-----------------------------------------L0.20------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.01us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.01us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.11, L0.12, L0.13, L0.14, L0.15, L0.16, L0.17, L0.18, L0.19, L0.20"
- " Creating 2 files"
- "**** Simulation run 1, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.21[173,950] 1.01us |---------------------------------L0.21----------------------------------| "
- "L0.22[50,629] 1.01us |------------------------L0.22------------------------| "
- "L0.23[76,932] 1.01us |-------------------------------------L0.23-------------------------------------| "
- "L0.24[42,986] 1.01us |-----------------------------------------L0.24------------------------------------------|"
- "L0.25[173,950] 1.01us |---------------------------------L0.25----------------------------------| "
- "L0.26[50,629] 1.01us |------------------------L0.26------------------------| "
- "L0.27[76,932] 1.02us |-------------------------------------L0.27-------------------------------------| "
- "L0.28[42,986] 1.02us |-----------------------------------------L0.28------------------------------------------|"
- "L0.29[173,950] 1.02us |---------------------------------L0.29----------------------------------| "
- "L0.30[50,629] 1.02us |------------------------L0.30------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.02us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.02us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.21, L0.22, L0.23, L0.24, L0.25, L0.26, L0.27, L0.28, L0.29, L0.30"
- " Creating 2 files"
- "**** Simulation run 2, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.31[76,932] 1.02us |-------------------------------------L0.31-------------------------------------| "
- "L0.32[42,986] 1.02us |-----------------------------------------L0.32------------------------------------------|"
- "L0.33[173,950] 1.02us |---------------------------------L0.33----------------------------------| "
- "L0.34[50,629] 1.02us |------------------------L0.34------------------------| "
- "L0.35[76,932] 1.02us |-------------------------------------L0.35-------------------------------------| "
- "L0.36[42,986] 1.02us |-----------------------------------------L0.36------------------------------------------|"
- "L0.37[173,950] 1.03us |---------------------------------L0.37----------------------------------| "
- "L0.38[50,629] 1.03us |------------------------L0.38------------------------| "
- "L0.39[76,932] 1.03us |-------------------------------------L0.39-------------------------------------| "
- "L0.40[42,986] 1.03us |-----------------------------------------L0.40------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.03us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.03us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.31, L0.32, L0.33, L0.34, L0.35, L0.36, L0.37, L0.38, L0.39, L0.40"
- " Creating 2 files"
- "**** Simulation run 3, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.41[173,950] 1.03us |---------------------------------L0.41----------------------------------| "
- "L0.42[50,629] 1.03us |------------------------L0.42------------------------| "
- "L0.43[76,932] 1.03us |-------------------------------------L0.43-------------------------------------| "
- "L0.44[42,986] 1.03us |-----------------------------------------L0.44------------------------------------------|"
- "L0.45[173,950] 1.03us |---------------------------------L0.45----------------------------------| "
- "L0.46[50,629] 1.03us |------------------------L0.46------------------------| "
- "L0.47[76,932] 1.04us |-------------------------------------L0.47-------------------------------------| "
- "L0.48[42,986] 1.04us |-----------------------------------------L0.48------------------------------------------|"
- "L0.49[173,950] 1.04us |---------------------------------L0.49----------------------------------| "
- "L0.50[50,629] 1.04us |------------------------L0.50------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.04us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.04us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.41, L0.42, L0.43, L0.44, L0.45, L0.46, L0.47, L0.48, L0.49, L0.50"
- " Creating 2 files"
- "**** Simulation run 4, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[797]). 10 Input Files, 100mb total:"
- "L0, all files 10mb "
- "L0.51[76,932] 1.04us |-------------------------------------L0.51-------------------------------------| "
- "L0.52[42,986] 1.04us |-----------------------------------------L0.52------------------------------------------|"
- "L0.53[173,950] 1.04us |---------------------------------L0.53----------------------------------| "
- "L0.54[50,629] 1.04us |------------------------L0.54------------------------| "
- "L0.55[76,932] 1.04us |-------------------------------------L0.55-------------------------------------| "
- "L0.56[42,986] 1.05us |-----------------------------------------L0.56------------------------------------------|"
- "L0.57[173,950] 1.05us |---------------------------------L0.57----------------------------------| "
- "L0.58[50,629] 1.05us |------------------------L0.58------------------------| "
- "L0.59[76,932] 1.05us |-------------------------------------L0.59-------------------------------------| "
- "L0.60[42,986] 1.05us |-----------------------------------------L0.60------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L0 "
- "L0.?[42,797] 1.05us 80mb |--------------------------------L0.?---------------------------------| "
- "L0.?[798,986] 1.05us 20mb |-----L0.?------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.51, L0.52, L0.53, L0.54, L0.55, L0.56, L0.57, L0.58, L0.59, L0.60"
- " Creating 2 files"
- "**** Simulation run 5, type=split(HighL0OverlapSingleFile)(split_times=[293, 544]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.61[42,797] 1.01us |-----------------------------------------L0.61------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,293] 1.01us 27mb |-----------L0.?------------| "
- "L0.?[294,544] 1.01us 26mb |-----------L0.?------------| "
- "L0.?[545,797] 1.01us 27mb |------------L0.?------------| "
- "**** Simulation run 6, type=split(HighL0OverlapSingleFile)(split_times=[293, 544]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.63[42,797] 1.02us |-----------------------------------------L0.63------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,293] 1.02us 27mb |-----------L0.?------------| "
- "L0.?[294,544] 1.02us 26mb |-----------L0.?------------| "
- "L0.?[545,797] 1.02us 27mb |------------L0.?------------| "
- "**** Simulation run 7, type=split(HighL0OverlapSingleFile)(split_times=[293, 544]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.65[42,797] 1.03us |-----------------------------------------L0.65------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,293] 1.03us 27mb |-----------L0.?------------| "
- "L0.?[294,544] 1.03us 26mb |-----------L0.?------------| "
- "L0.?[545,797] 1.03us 27mb |------------L0.?------------| "
- "**** Simulation run 8, type=split(HighL0OverlapSingleFile)(split_times=[293, 544]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.67[42,797] 1.04us |-----------------------------------------L0.67------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,293] 1.04us 27mb |-----------L0.?------------| "
- "L0.?[294,544] 1.04us 26mb |-----------L0.?------------| "
- "L0.?[545,797] 1.04us 27mb |------------L0.?------------| "
- "**** Simulation run 9, type=split(HighL0OverlapSingleFile)(split_times=[293, 544]). 1 Input Files, 80mb total:"
- "L0, all files 80mb "
- "L0.69[42,797] 1.05us |-----------------------------------------L0.69------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 80mb total:"
- "L0 "
- "L0.?[42,293] 1.05us 27mb |-----------L0.?------------| "
- "L0.?[294,544] 1.05us 26mb |-----------L0.?------------| "
- "L0.?[545,797] 1.05us 27mb |------------L0.?------------| "
- "Committing partition 1:"
- " Soft Deleting 5 files: L0.61, L0.63, L0.65, L0.67, L0.69"
- " Creating 15 files"
- "**** Simulation run 10, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[232, 422]). 10 Input Files, 265mb total:"
- "L0 "
- "L0.71[42,293] 1.01us 27mb|-------------------L0.71-------------------| "
- "L0.72[294,544] 1.01us 26mb |------------------L0.72-------------------| "
- "L0.74[42,293] 1.02us 27mb|-------------------L0.74-------------------| "
- "L0.75[294,544] 1.02us 26mb |------------------L0.75-------------------| "
- "L0.77[42,293] 1.03us 27mb|-------------------L0.77-------------------| "
- "L0.78[294,544] 1.03us 26mb |------------------L0.78-------------------| "
- "L0.80[42,293] 1.04us 27mb|-------------------L0.80-------------------| "
- "L0.81[294,544] 1.04us 26mb |------------------L0.81-------------------| "
- "L0.83[42,293] 1.05us 27mb|-------------------L0.83-------------------| "
- "L0.84[294,544] 1.05us 26mb |------------------L0.84-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 265mb total:"
- "L0 "
- "L0.?[42,232] 1.05us 100mb|--------------L0.?--------------| "
- "L0.?[233,422] 1.05us 100mb |-------------L0.?--------------| "
- "L0.?[423,544] 1.05us 65mb |-------L0.?--------| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.71, L0.72, L0.74, L0.75, L0.77, L0.78, L0.80, L0.81, L0.83, L0.84"
- " Creating 3 files"
- "**** Simulation run 11, type=split(CompactAndSplitOutput(ManySmallFiles))(split_times=[733, 921]). 10 Input Files, 235mb total:"
- "L0 "
- "L0.73[545,797] 1.01us 27mb|----------------------L0.73----------------------| "
- "L0.62[798,986] 1.01us 20mb |---------------L0.62----------------| "
- "L0.76[545,797] 1.02us 27mb|----------------------L0.76----------------------| "
- "L0.64[798,986] 1.02us 20mb |---------------L0.64----------------| "
- "L0.79[545,797] 1.03us 27mb|----------------------L0.79----------------------| "
- "L0.66[798,986] 1.03us 20mb |---------------L0.66----------------| "
- "L0.82[545,797] 1.04us 27mb|----------------------L0.82----------------------| "
- "L0.68[798,986] 1.04us 20mb |---------------L0.68----------------| "
- "L0.85[545,797] 1.05us 27mb|----------------------L0.85----------------------| "
- "L0.70[798,986] 1.05us 20mb |---------------L0.70----------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 235mb total:"
- "L0 "
- "L0.?[545,733] 1.05us 100mb|----------------L0.?----------------| "
- "L0.?[734,921] 1.05us 99mb |----------------L0.?----------------| "
- "L0.?[922,986] 1.05us 35mb |---L0.?----| "
- "Committing partition 1:"
- " Soft Deleting 10 files: L0.62, L0.64, L0.66, L0.68, L0.70, L0.73, L0.76, L0.79, L0.82, L0.85"
- " Creating 3 files"
- "**** Simulation run 12, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[422, 611]). 3 Input Files, 265mb total:"
- "L0 "
- "L0.87[233,422] 1.05us 100mb|-------------L0.87--------------| "
- "L0.88[423,544] 1.05us 65mb |-------L0.88-------| "
- "L0.89[545,733] 1.05us 100mb |-------------L0.89-------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 265mb total:"
- "L1 "
- "L1.?[233,422] 1.05us 100mb|--------------L1.?--------------| "
- "L1.?[423,611] 1.05us 100mb |-------------L1.?--------------| "
- "L1.?[612,733] 1.05us 65mb |-------L1.?--------| "
- "Committing partition 1:"
- " Soft Deleting 3 files: L0.87, L0.88, L0.89"
- " Upgrading 1 files level to CompactionLevel::L1: L0.86"
- " Creating 3 files"
- "**** Simulation run 13, type=split(CompactAndSplitOutput(TotalSizeLessThanMaxCompactSize))(split_times=[922]). 2 Input Files, 135mb total:"
- "L0 "
- "L0.91[922,986] 1.05us 35mb |-------L0.91--------| "
- "L0.90[734,921] 1.05us 99mb|-----------------------------L0.90------------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 135mb total:"
- "L1 "
- "L1.?[734,922] 1.05us 100mb|------------------------------L1.?-------------------------------| "
- "L1.?[923,986] 1.05us 34mb |--------L1.?--------| "
- "Committing partition 1:"
- " Soft Deleting 2 files: L0.90, L0.91"
- " Creating 2 files"
- "**** Simulation run 14, type=split(ReduceOverlap)(split_times=[499, 599]). 1 Input Files, 100mb total:"
- "L1, all files 100mb "
- "L1.93[423,611] 1.05us |-----------------------------------------L1.93------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L1 "
- "L1.?[423,499] 1.05us 40mb|---------------L1.?---------------| "
- "L1.?[500,599] 1.05us 52mb |--------------------L1.?---------------------| "
- "L1.?[600,611] 1.05us 7mb |L1.?|"
- "**** Simulation run 15, type=split(ReduceOverlap)(split_times=[299, 399]). 1 Input Files, 100mb total:"
- "L1, all files 100mb "
- "L1.92[233,422] 1.05us |-----------------------------------------L1.92------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L1 "
- "L1.?[233,299] 1.05us 35mb|------------L1.?-------------| "
- "L1.?[300,399] 1.05us 52mb |--------------------L1.?---------------------| "
- "L1.?[400,422] 1.05us 13mb |--L1.?--| "
- "**** Simulation run 16, type=split(ReduceOverlap)(split_times=[99, 199]). 1 Input Files, 100mb total:"
- "L1, all files 100mb "
- "L1.86[42,232] 1.05us |-----------------------------------------L1.86------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L1 "
- "L1.?[42,99] 1.05us 30mb |----------L1.?-----------| "
- "L1.?[100,199] 1.05us 52mb |--------------------L1.?--------------------| "
- "L1.?[200,232] 1.05us 18mb |----L1.?-----| "
- "**** Simulation run 17, type=split(ReduceOverlap)(split_times=[699]). 1 Input Files, 65mb total:"
- "L1, all files 65mb "
- "L1.94[612,733] 1.05us |-----------------------------------------L1.94-----------------------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 65mb total:"
- "L1 "
- "L1.?[612,699] 1.05us 47mb|-----------------------------L1.?-----------------------------| "
- "L1.?[700,733] 1.05us 18mb |---------L1.?---------| "
- "**** Simulation run 18, type=split(ReduceOverlap)(split_times=[799, 899]). 1 Input Files, 100mb total:"
- "L1, all files 100mb "
- "L1.95[734,922] 1.05us |-----------------------------------------L1.95------------------------------------------|"
- "**** 3 Output Files (parquet_file_id not yet assigned), 100mb total:"
- "L1 "
- "L1.?[734,799] 1.05us 35mb|------------L1.?-------------| "
- "L1.?[800,899] 1.05us 53mb |--------------------L1.?---------------------| "
- "L1.?[900,922] 1.05us 13mb |--L1.?--| "
- "Committing partition 1:"
- " Soft Deleting 5 files: L1.86, L1.92, L1.93, L1.94, L1.95"
- " Creating 14 files"
- "**** Simulation run 19, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[71, 142]). 4 Input Files, 282mb total:"
- "L1 "
- "L1.103[42,99] 1.05us 30mb |--------L1.103---------| "
- "L1.104[100,199] 1.05us 52mb |------------------L1.104------------------| "
- "L2 "
- "L2.1[0,99] 99ns 100mb |-------------------L2.1-------------------| "
- "L2.2[100,199] 199ns 100mb |-------------------L2.2-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 282mb total:"
- "L2 "
- "L2.?[0,71] 1.05us 101mb |-------------L2.?-------------| "
- "L2.?[72,142] 1.05us 99mb |------------L2.?-------------| "
- "L2.?[143,199] 1.05us 82mb |---------L2.?----------| "
- "Committing partition 1:"
- " Soft Deleting 4 files: L2.1, L2.2, L1.103, L1.104"
- " Creating 3 files"
- "**** Simulation run 20, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[265]). 3 Input Files, 153mb total:"
- "L1 "
- "L1.105[200,232] 1.05us 18mb|----------L1.105-----------| "
- "L1.100[233,299] 1.05us 35mb |-------------------------L1.100--------------------------| "
- "L2 "
- "L2.3[200,299] 299ns 100mb|-----------------------------------------L2.3------------------------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 153mb total:"
- "L2 "
- "L2.?[200,265] 1.05us 100mb|--------------------------L2.?---------------------------| "
- "L2.?[266,299] 1.05us 53mb |-----------L2.?------------| "
- "Committing partition 1:"
- " Soft Deleting 3 files: L2.3, L1.100, L1.105"
- " Creating 2 files"
- "**** Simulation run 21, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[376, 452]). 4 Input Files, 265mb total:"
- "L1 "
- "L1.101[300,399] 1.05us 52mb|------------------L1.101------------------| "
- "L1.102[400,422] 1.05us 13mb |L1.102-| "
- "L2 "
- "L2.4[300,399] 399ns 100mb|-------------------L2.4-------------------| "
- "L2.5[400,499] 499ns 100mb |-------------------L2.5-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 265mb total:"
- "L2 "
- "L2.?[300,376] 1.05us 101mb|--------------L2.?--------------| "
- "L2.?[377,452] 1.05us 100mb |-------------L2.?--------------| "
- "L2.?[453,499] 1.05us 64mb |-------L2.?-------| "
- "Committing partition 1:"
- " Soft Deleting 4 files: L2.4, L2.5, L1.101, L1.102"
- " Creating 3 files"
- "**** Simulation run 22, type=split(ReduceOverlap)(split_times=[452]). 1 Input Files, 40mb total:"
- "L1, all files 40mb "
- "L1.97[423,499] 1.05us |-----------------------------------------L1.97------------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 40mb total:"
- "L1 "
- "L1.?[423,452] 1.05us 15mb|--------------L1.?--------------| "
- "L1.?[453,499] 1.05us 25mb |------------------------L1.?------------------------| "
- "Committing partition 1:"
- " Soft Deleting 1 files: L1.97"
- " Creating 2 files"
- "**** Simulation run 23, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[437, 497]). 4 Input Files, 204mb total:"
- "L1 "
- "L1.119[423,452] 1.05us 15mb |------L1.119-------| "
- "L1.120[453,499] 1.05us 25mb |------------L1.120-------------| "
- "L2 "
- "L2.117[377,452] 1.05us 100mb|-----------------------L2.117------------------------| "
- "L2.118[453,499] 1.05us 64mb |------------L2.118-------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 204mb total:"
- "L2 "
- "L2.?[377,437] 1.05us 100mb|-------------------L2.?-------------------| "
- "L2.?[438,497] 1.05us 99mb |------------------L2.?-------------------| "
- "L2.?[498,499] 1.05us 5mb |L2.?|"
- "Committing partition 1:"
- " Soft Deleting 4 files: L2.117, L2.118, L1.119, L1.120"
- " Creating 3 files"
- "**** Simulation run 24, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[577, 654]). 4 Input Files, 259mb total:"
- "L1 "
- "L1.98[500,599] 1.05us 52mb|------------------L1.98-------------------| "
- "L1.99[600,611] 1.05us 7mb |L1.99| "
- "L2 "
- "L2.6[500,599] 599ns 100mb|-------------------L2.6-------------------| "
- "L2.7[600,699] 699ns 100mb |-------------------L2.7-------------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 259mb total:"
- "L2 "
- "L2.?[500,577] 1.05us 100mb|--------------L2.?--------------| "
- "L2.?[578,654] 1.05us 99mb |--------------L2.?--------------| "
- "L2.?[655,699] 1.05us 60mb |------L2.?-------| "
- "Committing partition 1:"
- " Soft Deleting 4 files: L2.6, L2.7, L1.98, L1.99"
- " Creating 3 files"
- "**** Simulation run 25, type=split(ReduceOverlap)(split_times=[654]). 1 Input Files, 47mb total:"
- "L1, all files 47mb "
- "L1.106[612,699] 1.05us |-----------------------------------------L1.106-----------------------------------------|"
- "**** 2 Output Files (parquet_file_id not yet assigned), 47mb total:"
- "L1 "
- "L1.?[612,654] 1.05us 23mb|------------------L1.?-------------------| "
- "L1.?[655,699] 1.05us 24mb |-------------------L1.?--------------------| "
- "Committing partition 1:"
- " Soft Deleting 1 files: L1.106"
- " Creating 2 files"
- "**** Simulation run 26, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[637, 696]). 4 Input Files, 206mb total:"
- "L1 "
- "L1.127[612,654] 1.05us 23mb |-----------L1.127------------| "
- "L1.128[655,699] 1.05us 24mb |------------L1.128------------| "
- "L2 "
- "L2.125[578,654] 1.05us 99mb|------------------------L2.125------------------------| "
- "L2.126[655,699] 1.05us 60mb |------------L2.126------------| "
- "**** 3 Output Files (parquet_file_id not yet assigned), 206mb total:"
- "L2 "
- "L2.?[578,637] 1.05us 100mb|------------------L2.?-------------------| "
- "L2.?[638,696] 1.05us 99mb |------------------L2.?-------------------| "
- "L2.?[697,699] 1.05us 7mb |L2.?|"
- "Committing partition 1:"
- " Soft Deleting 4 files: L2.125, L2.126, L1.127, L1.128"
- " Creating 3 files"
- "**** Simulation run 27, type=split(CompactAndSplitOutput(FoundSubsetLessThanMaxCompactSize))(split_times=[765]). 3 Input Files, 153mb total:"
- "L1 "
- "L1.107[700,733] 1.05us 18mb|----------L1.107-----------| "
- "L1.108[734,799] 1.05us 35mb |-------------------------L1.108--------------------------| "
- "L2 "
- "L2.8[700,799] 799ns 100mb|-----------------------------------------L2.8------------------------------------------| "
- "**** 2 Output Files (parquet_file_id not yet assigned), 153mb total:"
- "L2 "
- "L2.?[700,765] 1.05us 100mb|--------------------------L2.?---------------------------| "
- "L2.?[766,799] 1.05us 53mb |-----------L2.?------------| "
- "Committing partition 1:"
- " Soft Deleting 3 files: L2.8, L1.107, L1.108"
- " Creating 2 files"
- "**** Final Output Files (3.78gb written)"
- "L1 "
- "L1.96[923,986] 1.05us 34mb |L1.96|"
- "L1.109[800,899] 1.05us 53mb |L1.109| "
- "L1.110[900,922] 1.05us 13mb |L1.110| "
- "L2 "
- "L2.9[800,899] 899ns 100mb |-L2.9-| "
- "L2.10[900,999] 999ns 100mb |L2.10-| "
- "L2.111[0,71] 1.05us 101mb|L2.111| "
- "L2.112[72,142] 1.05us 99mb |L2.112| "
- "L2.113[143,199] 1.05us 82mb |L2.113| "
- "L2.114[200,265] 1.05us 100mb |L2.114| "
- "L2.115[266,299] 1.05us 53mb |L2.115| "
- "L2.116[300,376] 1.05us 101mb |L2.116| "
- "L2.121[377,437] 1.05us 100mb |L2.121| "
- "L2.122[438,497] 1.05us 99mb |L2.122| "
- "L2.123[498,499] 1.05us 5mb |L2.123| "
- "L2.124[500,577] 1.05us 100mb |L2.124| "
- "L2.129[578,637] 1.05us 100mb |L2.129| "
- "L2.130[638,696] 1.05us 99mb |L2.130| "
- "L2.131[697,699] 1.05us 7mb |L2.131| "
- "L2.132[700,765] 1.05us 100mb |L2.132| "
- "L2.133[766,799] 1.05us 53mb |L2.133| "
"###
);
}
// The files in this case are from a partition that was doing incredibly inefficient L0->L0 compactions.
// For ease of looking at the files in simulator output, I mapped all times into a small time range.
// Specifically, all times in the L0s were sorted in a list, then the files timestamps were replaced with the 1 relative
// index from that list.
// The result is that time deltas are not representative of what's in the catalog, but the overlaps are replicated with
// small numbers as timestamps that are easier for a person to look at.
#[tokio::test]
async fn actual_case_from_catalog_1() {
test_helpers::maybe_start_logging();
let setup = layout_setup_builder()
.await
.with_max_desired_file_size_bytes(MAX_DESIRED_FILE_SIZE)
.with_max_num_files_per_plan(20)
.with_suppress_run_output()
.with_partition_timeout(Duration::from_secs(10))
.build()
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(1)
.with_max_time(2)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(478836)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(3)
.with_max_time(4)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(474866)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(5)
.with_max_time(7)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(454768)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(6)
.with_max_time(49)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(277569)
.with_max_l0_created_at(Time::from_timestamp_nanos(127)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(8)
.with_max_time(25)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(473373)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(9)
.with_max_time(54)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(93159)
.with_max_l0_created_at(Time::from_timestamp_nanos(141)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(10)
.with_max_time(20)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(90782)
.with_max_l0_created_at(Time::from_timestamp_nanos(153)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(11)
.with_max_time(30)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(67575)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(12)
.with_max_time(14)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(88947)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(13)
.with_max_time(47)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(70227)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(15)
.with_max_time(51)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(77719)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(16)
.with_max_time(55)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(80887)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(17)
.with_max_time(56)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(89902)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(18)
.with_max_time(65)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(165529)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(19)
.with_max_time(68)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(135875)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(21)
.with_max_time(23)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(73234)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(22)
.with_max_time(24)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(41743)
.with_max_l0_created_at(Time::from_timestamp_nanos(311)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(26)
.with_max_time(29)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(42785)
.with_max_l0_created_at(Time::from_timestamp_nanos(311)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(27)
.with_max_time(52)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(452507)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(28)
.with_max_time(32)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(60040)
.with_max_l0_created_at(Time::from_timestamp_nanos(316)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(31)
.with_max_time(34)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(60890)
.with_max_l0_created_at(Time::from_timestamp_nanos(319)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(33)
.with_max_time(36)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(69687)
.with_max_l0_created_at(Time::from_timestamp_nanos(323)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(35)
.with_max_time(38)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(59141)
.with_max_l0_created_at(Time::from_timestamp_nanos(325)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(37)
.with_max_time(40)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(67287)
.with_max_l0_created_at(Time::from_timestamp_nanos(328)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(39)
.with_max_time(42)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(53545)
.with_max_l0_created_at(Time::from_timestamp_nanos(335)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(41)
.with_max_time(44)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(66218)
.with_max_l0_created_at(Time::from_timestamp_nanos(336)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(43)
.with_max_time(46)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(96870)
.with_max_l0_created_at(Time::from_timestamp_nanos(340)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(45)
.with_max_time(48)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(162922)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(50)
.with_max_time(71)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(741563)
.with_max_l0_created_at(Time::from_timestamp_nanos(127)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(53)
.with_max_time(62)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(452298)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(57)
.with_max_time(61)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(116428)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(58)
.with_max_time(70)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(469192)
.with_max_l0_created_at(Time::from_timestamp_nanos(141)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(59)
.with_max_time(93)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(118295625)
.with_max_l0_created_at(Time::from_timestamp_nanos(153)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(60)
.with_max_time(102)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(21750626)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(63)
.with_max_time(75)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(595460)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(64)
.with_max_time(74)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(188078)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(66)
.with_max_time(67)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(236787)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(69)
.with_max_time(73)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(7073)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(72)
.with_max_time(117)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(271967233)
.with_max_l0_created_at(Time::from_timestamp_nanos(127)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(76)
.with_max_time(80)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(296649)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(77)
.with_max_time(77)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6400)
.with_max_l0_created_at(Time::from_timestamp_nanos(311)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(78)
.with_max_time(79)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6673)
.with_max_l0_created_at(Time::from_timestamp_nanos(316)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(81)
.with_max_time(133)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(260832981)
.with_max_l0_created_at(Time::from_timestamp_nanos(141)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(82)
.with_max_time(83)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(108736)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(84)
.with_max_time(89)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(137579)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(85)
.with_max_time(86)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6639)
.with_max_l0_created_at(Time::from_timestamp_nanos(319)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(87)
.with_max_time(88)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(126187)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(90)
.with_max_time(97)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(158579)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(91)
.with_max_time(92)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(107298)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(94)
.with_max_time(143)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(120508643)
.with_max_l0_created_at(Time::from_timestamp_nanos(153)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(95)
.with_max_time(96)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(196729)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(98)
.with_max_time(111)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(110870)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(99)
.with_max_time(109)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(93360)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(100)
.with_max_time(104)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6561)
.with_max_l0_created_at(Time::from_timestamp_nanos(325)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(101)
.with_max_time(106)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(68025)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(103)
.with_max_time(173)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(228950896)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(105)
.with_max_time(112)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(77925)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(107)
.with_max_time(108)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(8237)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(110)
.with_max_time(110)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6400)
.with_max_l0_created_at(Time::from_timestamp_nanos(328)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(113)
.with_max_time(116)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(48975)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(114)
.with_max_time(124)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(79883481)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(115)
.with_max_time(123)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(109212)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(116)
.with_max_time(119)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(95486)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(118)
.with_max_time(120)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(93781)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(121)
.with_max_time(122)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(7448)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(125)
.with_max_time(137)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(100265729)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(126)
.with_max_time(136)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(102711)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(128)
.with_max_time(142)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(119202)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(129)
.with_max_time(130)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(9027)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(131)
.with_max_time(132)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(25565)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(134)
.with_max_time(145)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(34519040)
.with_max_l0_created_at(Time::from_timestamp_nanos(179)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(135)
.with_max_time(144)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(764185)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(138)
.with_max_time(158)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(71505278)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(139)
.with_max_time(159)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(183141)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(140)
.with_max_time(154)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6701)
.with_max_l0_created_at(Time::from_timestamp_nanos(336)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(146)
.with_max_time(155)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(65266955)
.with_max_l0_created_at(Time::from_timestamp_nanos(179)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(147)
.with_max_time(160)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(21649346)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(148)
.with_max_time(150)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(55409)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(149)
.with_max_time(157)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(74432)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(151)
.with_max_time(152)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(23495)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(156)
.with_max_time(160)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(55979589)
.with_max_l0_created_at(Time::from_timestamp_nanos(179)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(161)
.with_max_time(163)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(1061014)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(161)
.with_max_time(171)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(46116292)
.with_max_l0_created_at(Time::from_timestamp_nanos(179)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(162)
.with_max_time(167)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(43064)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(164)
.with_max_time(174)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(99408169)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(165)
.with_max_time(170)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(50372)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(166)
.with_max_time(168)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(14716604)
.with_max_l0_created_at(Time::from_timestamp_nanos(172)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(169)
.with_max_time(181)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(172039)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(175)
.with_max_time(180)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(136666078)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(176)
.with_max_time(178)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(189566)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(177)
.with_max_time(182)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(47820008)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(183)
.with_max_time(197)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(211523341)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(184)
.with_max_time(196)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(159235)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(185)
.with_max_time(195)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(14985821)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(186)
.with_max_time(187)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(17799)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(188)
.with_max_time(193)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(52964586)
.with_max_l0_created_at(Time::from_timestamp_nanos(191)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(189)
.with_max_time(190)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6420)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(192)
.with_max_time(194)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(37185)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(198)
.with_max_time(204)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(48661531)
.with_max_l0_created_at(Time::from_timestamp_nanos(212)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(199)
.with_max_time(206)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(104533)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(200)
.with_max_time(207)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(115840212)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(201)
.with_max_time(203)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(27386)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(202)
.with_max_time(205)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6485)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(208)
.with_max_time(214)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(63573570)
.with_max_l0_created_at(Time::from_timestamp_nanos(224)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(209)
.with_max_time(215)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(73119)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(210)
.with_max_time(211)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(6626)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(213)
.with_max_time(221)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(103699116)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(216)
.with_max_time(226)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(160045)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(217)
.with_max_time(220)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(47126)
.with_max_l0_created_at(Time::from_timestamp_nanos(340)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(218)
.with_max_time(219)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(7923)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(222)
.with_max_time(225)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(116506120)
.with_max_l0_created_at(Time::from_timestamp_nanos(239)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(223)
.with_max_time(228)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(122528493)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(227)
.with_max_time(234)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(42963)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(229)
.with_max_time(242)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(132343737)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(230)
.with_max_time(231)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(25526)
.with_max_l0_created_at(Time::from_timestamp_nanos(340)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(232)
.with_max_time(244)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(52114677)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(233)
.with_max_time(237)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(80814)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(235)
.with_max_time(241)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(84586)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(236)
.with_max_time(238)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(31508)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(240)
.with_max_time(243)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(31292)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(245)
.with_max_time(255)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(169461420)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(246)
.with_max_time(249)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(32436)
.with_max_l0_created_at(Time::from_timestamp_nanos(258)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(247)
.with_max_time(250)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(30783)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(248)
.with_max_time(254)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(116968)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(251)
.with_max_time(255)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(20831132)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(252)
.with_max_time(268)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(47079)
.with_max_l0_created_at(Time::from_timestamp_nanos(340)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(253)
.with_max_time(267)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(8012)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(256)
.with_max_time(259)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(24905052)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(256)
.with_max_time(262)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(26916757)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(257)
.with_max_time(263)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(114015)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(260)
.with_max_time(270)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(184997646)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(261)
.with_max_time(264)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(10024382)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(265)
.with_max_time(270)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(11941889)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(266)
.with_max_time(269)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(45048)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(271)
.with_max_time(277)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(101521806)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(271)
.with_max_time(275)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(28959050)
.with_max_l0_created_at(Time::from_timestamp_nanos(273)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(272)
.with_max_time(276)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(81663)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(274)
.with_max_time(281)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(30344109)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(278)
.with_max_time(283)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(125782713)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(279)
.with_max_time(284)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(109926)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(280)
.with_max_time(285)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(13486)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(282)
.with_max_time(286)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(34930420)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(287)
.with_max_time(298)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(179171551)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(288)
.with_max_time(291)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(27704)
.with_max_l0_created_at(Time::from_timestamp_nanos(296)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(289)
.with_max_time(299)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(73478274)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(290)
.with_max_time(292)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(16412)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(293)
.with_max_time(339)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(99066230)
.with_max_l0_created_at(Time::from_timestamp_nanos(342)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(294)
.with_max_time(321)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(55188)
.with_max_l0_created_at(Time::from_timestamp_nanos(328)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(295)
.with_max_time(332)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(198938676)
.with_max_l0_created_at(Time::from_timestamp_nanos(335)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(297)
.with_max_time(313)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(244238124)
.with_max_l0_created_at(Time::from_timestamp_nanos(311)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(300)
.with_max_time(307)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(176463536)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(301)
.with_max_time(302)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(17116)
.with_max_l0_created_at(Time::from_timestamp_nanos(306)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(303)
.with_max_time(304)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(9993)
.with_max_l0_created_at(Time::from_timestamp_nanos(325)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(305)
.with_max_time(317)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(229578231)
.with_max_l0_created_at(Time::from_timestamp_nanos(316)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(308)
.with_max_time(309)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(12831)
.with_max_l0_created_at(Time::from_timestamp_nanos(319)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(310)
.with_max_time(320)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(222546135)
.with_max_l0_created_at(Time::from_timestamp_nanos(319)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(312)
.with_max_time(314)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(25989)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(315)
.with_max_time(324)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(224750727)
.with_max_l0_created_at(Time::from_timestamp_nanos(323)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(318)
.with_max_time(326)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(224562423)
.with_max_l0_created_at(Time::from_timestamp_nanos(325)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(322)
.with_max_time(329)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(223130462)
.with_max_l0_created_at(Time::from_timestamp_nanos(328)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(327)
.with_max_time(333)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(191981570)
.with_max_l0_created_at(Time::from_timestamp_nanos(336)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(330)
.with_max_time(338)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(242123981)
.with_max_l0_created_at(Time::from_timestamp_nanos(340)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(331)
.with_max_time(338)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(243511891)
.with_max_l0_created_at(Time::from_timestamp_nanos(341)),
)
.await;
setup
.partition
.create_parquet_file(
parquet_builder()
.with_min_time(334)
.with_max_time(337)
.with_compaction_level(CompactionLevel::Initial)
.with_file_size_bytes(30538013)
.with_max_l0_created_at(Time::from_timestamp_nanos(336)),
)
.await;
insta::assert_yaml_snapshot!(
run_layout_scenario(&setup).await,
@r###"
---
- "**** Input Files "
- "L0 "
- "L0.1[1,2] 342ns 468kb |L0.1| "
- "L0.2[3,4] 342ns 464kb |L0.2| "
- "L0.3[5,7] 342ns 444kb |L0.3| "
- "L0.4[6,49] 127ns 271kb |--L0.4---| "
- "L0.5[8,25] 342ns 462kb |L0.5| "
- "L0.6[9,54] 141ns 91kb |--L0.6---| "
- "L0.7[10,20] 153ns 89kb |L0.7| "
- "L0.8[11,30] 172ns 66kb |L0.8| "
- "L0.9[12,14] 191ns 87kb |L0.9| "
- "L0.10[13,47] 212ns 69kb |-L0.10-| "
- "L0.11[15,51] 224ns 76kb |-L0.11-| "
- "L0.12[16,55] 239ns 79kb |-L0.12--| "
- "L0.13[17,56] 258ns 88kb |-L0.13--| "
- "L0.14[18,65] 273ns 162kb |--L0.14---| "
- "L0.15[19,68] 296ns 133kb |---L0.15---| "
- "L0.16[21,23] 306ns 72kb |L0.16| "
- "L0.17[22,24] 311ns 41kb |L0.17| "
- "L0.18[26,29] 311ns 42kb |L0.18| "
- "L0.19[27,52] 342ns 442kb |L0.19| "
- "L0.20[28,32] 316ns 59kb |L0.20| "
- "L0.21[31,34] 319ns 59kb |L0.21| "
- "L0.22[33,36] 323ns 68kb |L0.22| "
- "L0.23[35,38] 325ns 58kb |L0.23| "
- "L0.24[37,40] 328ns 66kb |L0.24| "
- "L0.25[39,42] 335ns 52kb |L0.25| "
- "L0.26[41,44] 336ns 65kb |L0.26| "
- "L0.27[43,46] 340ns 95kb |L0.27| "
- "L0.28[45,48] 341ns 159kb |L0.28| "
- "L0.29[50,71] 127ns 724kb |L0.29| "
- "L0.30[53,62] 342ns 442kb |L0.30| "
- "L0.31[57,61] 341ns 114kb |L0.31| "
- "L0.32[58,70] 141ns 458kb |L0.32| "
- "L0.33[59,93] 153ns 113mb |-L0.33-| "
- "L0.34[60,102] 172ns 21mb |--L0.34--| "
- "L0.35[63,75] 342ns 582kb |L0.35| "
- "L0.36[64,74] 341ns 184kb |L0.36| "
- "L0.37[66,67] 212ns 231kb |L0.37| "
- "L0.38[69,73] 306ns 7kb |L0.38| "
- "L0.39[72,117] 127ns 259mb |--L0.39--| "
- "L0.40[76,80] 342ns 290kb |L0.40| "
- "L0.41[77,77] 311ns 6kb |L0.41| "
- "L0.42[78,79] 316ns 7kb |L0.42| "
- "L0.43[81,133] 141ns 249mb |---L0.43---| "
- "L0.44[82,83] 342ns 106kb |L0.44| "
- "L0.45[84,89] 342ns 134kb |L0.45| "
- "L0.46[85,86] 319ns 6kb |L0.46| "
- "L0.47[87,88] 341ns 123kb |L0.47| "
- "L0.48[90,97] 342ns 155kb |L0.48| "
- "L0.49[91,92] 341ns 105kb |L0.49| "
- "L0.50[94,143] 153ns 115mb |---L0.50---| "
- "L0.51[95,96] 224ns 192kb |L0.51| "
- "L0.52[98,111] 342ns 108kb |L0.52| "
- "L0.53[99,109] 212ns 91kb |L0.53| "
- "L0.54[100,104] 325ns 6kb |L0.54| "
- "L0.55[101,106] 191ns 66kb |L0.55| "
- "L0.56[103,173] 172ns 218mb |-----L0.56------| "
- "L0.57[105,112] 224ns 76kb |L0.57| "
- "L0.58[107,108] 239ns 8kb |L0.58| "
- "L0.59[110,110] 328ns 6kb |L0.59| "
- "L0.60[113,116] 224ns 48kb |L0.60| "
- "L0.61[114,124] 172ns 76mb |L0.61| "
- "L0.62[115,123] 342ns 107kb |L0.62| "
- "L0.63[116,119] 239ns 93kb |L0.63| "
- "L0.64[118,120] 258ns 92kb |L0.64| "
- "L0.65[121,122] 273ns 7kb |L0.65| "
- "L0.66[125,137] 172ns 96mb |L0.66| "
- "L0.67[126,136] 342ns 100kb |L0.67| "
- "L0.68[128,142] 273ns 116kb |L0.68| "
- "L0.69[129,130] 258ns 9kb |L0.69| "
- "L0.70[131,132] 341ns 25kb |L0.70| "
- "L0.71[134,145] 179ns 33mb |L0.71| "
- "L0.72[135,144] 191ns 746kb |L0.72| "
- "L0.73[138,158] 172ns 68mb |L0.73| "
- "L0.74[139,159] 342ns 179kb |L0.74| "
- "L0.75[140,154] 336ns 7kb |L0.75| "
- "L0.76[146,155] 179ns 62mb |L0.76| "
- "L0.77[147,160] 191ns 21mb |L0.77| "
- "L0.78[148,150] 273ns 54kb |L0.78| "
- "L0.79[149,157] 296ns 73kb |L0.79| "
- "L0.80[151,152] 224ns 23kb |L0.80| "
- "L0.81[156,160] 179ns 53mb |L0.81| "
- "L0.82[161,163] 191ns 1mb |L0.82| "
- "L0.83[161,171] 179ns 44mb |L0.83| "
- "L0.84[162,167] 342ns 42kb |L0.84| "
- "L0.85[164,174] 191ns 95mb |L0.85| "
- "L0.86[165,170] 296ns 49kb |L0.86| "
- "L0.87[166,168] 172ns 14mb |L0.87| "
- "L0.88[169,181] 342ns 168kb |L0.88| "
- "L0.89[175,180] 191ns 130mb |L0.89| "
- "L0.90[176,178] 273ns 185kb |L0.90| "
- "L0.91[177,182] 212ns 46mb |L0.91| "
- "L0.92[183,197] 212ns 202mb |L0.92| "
- "L0.93[184,196] 342ns 156kb |L0.93| "
- "L0.94[185,195] 224ns 14mb |L0.94| "
- "L0.95[186,187] 273ns 17kb |L0.95| "
- "L0.96[188,193] 191ns 51mb |L0.96| "
- "L0.97[189,190] 341ns 6kb |L0.97| "
- "L0.98[192,194] 296ns 36kb |L0.98| "
- "L0.99[198,204] 212ns 46mb |L0.99| "
- "L0.100[199,206] 342ns 102kb |L0.100| "
- "L0.101[200,207] 224ns 110mb |L0.101| "
- "L0.102[201,203] 296ns 27kb |L0.102| "
- "L0.103[202,205] 341ns 6kb |L0.103| "
- "L0.104[208,214] 224ns 61mb |L0.104| "
- "L0.105[209,215] 342ns 71kb |L0.105| "
- "L0.106[210,211] 239ns 6kb |L0.106| "
- "L0.107[213,221] 239ns 99mb |L0.107| "
- "L0.108[216,226] 342ns 156kb |L0.108| "
- "L0.109[217,220] 340ns 46kb |L0.109| "
- "L0.110[218,219] 341ns 8kb |L0.110| "
- "L0.111[222,225] 239ns 111mb |L0.111| "
- "L0.112[223,228] 258ns 117mb |L0.112| "
- "L0.113[227,234] 342ns 42kb |L0.113| "
- "L0.114[229,242] 258ns 126mb |L0.114| "
- "L0.115[230,231] 340ns 25kb |L0.115| "
- "L0.116[232,244] 273ns 50mb |L0.116| "
- "L0.117[233,237] 273ns 79kb |L0.117| "
- "L0.118[235,241] 342ns 83kb |L0.118| "
- "L0.119[236,238] 296ns 31kb |L0.119| "
- "L0.120[240,243] 306ns 31kb |L0.120| "
- "L0.121[245,255] 273ns 162mb |L0.121| "
- "L0.122[246,249] 258ns 32kb |L0.122| "
- "L0.123[247,250] 306ns 30kb |L0.123| "
- "L0.124[248,254] 342ns 114kb |L0.124| "
- "L0.125[251,255] 273ns 20mb |L0.125| "
- "L0.126[252,268] 340ns 46kb |L0.126| "
- "L0.127[253,267] 341ns 8kb |L0.127| "
- "L0.128[256,259] 273ns 24mb |L0.128| "
- "L0.129[256,262] 273ns 26mb |L0.129| "
- "L0.130[257,263] 342ns 111kb |L0.130| "
- "L0.131[260,270] 273ns 176mb |L0.131| "
- "L0.132[261,264] 296ns 10mb |L0.132| "
- "L0.133[265,270] 296ns 11mb |L0.133| "
- "L0.134[266,269] 342ns 44kb |L0.134| "
- "L0.135[271,277] 296ns 97mb |L0.135| "
- "L0.136[271,275] 273ns 28mb |L0.136| "
- "L0.137[272,276] 342ns 80kb |L0.137| "
- "L0.138[274,281] 306ns 29mb |L0.138| "
- "L0.139[278,283] 296ns 120mb |L0.139| "
- "L0.140[279,284] 342ns 107kb |L0.140| "
- "L0.141[280,285] 306ns 13kb |L0.141| "
- "L0.142[282,286] 306ns 33mb |L0.142| "
- "L0.143[287,298] 306ns 171mb |L0.143| "
- "L0.144[288,291] 296ns 27kb |L0.144| "
- "L0.145[289,299] 306ns 70mb |L0.145| "
- "L0.146[290,292] 342ns 16kb |L0.146| "
- "L0.147[293,339] 342ns 94mb |--L0.147--| "
- "L0.148[294,321] 328ns 54kb |L0.148| "
- "L0.149[295,332] 335ns 190mb |L0.149-| "
- "L0.150[297,313] 311ns 233mb |L0.150| "
- "L0.151[300,307] 306ns 168mb |L0.151| "
- "L0.152[301,302] 306ns 17kb |L0.152| "
- "L0.153[303,304] 325ns 10kb |L0.153| "
- "L0.154[305,317] 316ns 219mb |L0.154| "
- "L0.155[308,309] 319ns 13kb |L0.155| "
- "L0.156[310,320] 319ns 212mb |L0.156|"
- "L0.157[312,314] 341ns 25kb |L0.157|"
- "L0.158[315,324] 323ns 214mb |L0.158|"
- "L0.159[318,326] 325ns 214mb |L0.159|"
- "L0.160[322,329] 328ns 213mb |L0.160|"
- "L0.161[327,333] 336ns 183mb |L0.161|"
- "L0.162[330,338] 340ns 231mb |L0.162|"
- "L0.163[331,338] 341ns 232mb |L0.163|"
- "L0.164[334,337] 336ns 29mb |L0.164|"
- "WARNING: file L0.39[72,117] 127ns 259mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.43[81,133] 141ns 249mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.56[103,173] 172ns 218mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.92[183,197] 212ns 202mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.121[245,255] 273ns 162mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.131[260,270] 273ns 176mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.143[287,298] 306ns 171mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.149[295,332] 335ns 190mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.150[297,313] 311ns 233mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.151[300,307] 306ns 168mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.154[305,317] 316ns 219mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.156[310,320] 319ns 212mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.158[315,324] 323ns 214mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.159[318,326] 325ns 214mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.160[322,329] 328ns 213mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.161[327,333] 336ns 183mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.162[330,338] 340ns 231mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L0.163[331,338] 341ns 232mb exceeds soft limit 100mb by more than 50%"
- "**** Final Output Files (23.23gb written)"
- "L2 "
- "L2.610[282,288] 342ns 100mb |L2.610| "
- "L2.619[314,314] 342ns 113mb |L2.619|"
- "L2.620[315,316] 342ns 107mb |L2.620|"
- "L2.621[317,317] 342ns 107mb |L2.621|"
- "L2.622[318,319] 342ns 111mb |L2.622|"
- "L2.623[320,320] 342ns 111mb |L2.623|"
- "L2.624[321,323] 342ns 146mb |L2.624|"
- "L2.625[324,325] 342ns 127mb |L2.625|"
- "L2.626[326,326] 342ns 127mb |L2.626|"
- "L2.627[327,329] 342ns 197mb |L2.627|"
- "L2.628[330,331] 342ns 114mb |L2.628|"
- "L2.629[332,332] 342ns 114mb |L2.629|"
- "L2.630[333,335] 342ns 199mb |L2.630|"
- "L2.631[336,337] 342ns 140mb |L2.631|"
- "L2.632[338,338] 342ns 140mb |L2.632|"
- "L2.918[1,24] 342ns 102mb |L2.918| "
- "L2.924[83,96] 342ns 107mb |L2.924| "
- "L2.930[143,151] 342ns 108mb |L2.930| "
- "L2.935[182,188] 342ns 119mb |L2.935| "
- "L2.938[205,213] 342ns 107mb |L2.938| "
- "L2.940[227,233] 342ns 114mb |L2.940| "
- "L2.946[261,267] 342ns 117mb |L2.946| "
- "L2.949[289,294] 342ns 124mb |L2.949| "
- "L2.955[311,313] 342ns 133mb |L2.955|"
- "L2.957[25,45] 342ns 105mb |L2.957| "
- "L2.958[46,65] 342ns 100mb |L2.958| "
- "L2.959[66,82] 342ns 94mb |L2.959| "
- "L2.960[97,107] 342ns 107mb |L2.960| "
- "L2.961[108,117] 342ns 96mb |L2.961| "
- "L2.962[118,124] 342ns 85mb |L2.962| "
- "L2.963[125,132] 342ns 115mb |L2.963| "
- "L2.964[133,139] 342ns 99mb |L2.964| "
- "L2.965[140,142] 342ns 66mb |L2.965| "
- "L2.966[152,159] 342ns 108mb |L2.966| "
- "L2.967[160,166] 342ns 92mb |L2.967| "
- "L2.968[167,171] 342ns 92mb |L2.968| "
- "L2.969[172,177] 342ns 121mb |L2.969| "
- "L2.970[178,181] 342ns 97mb |L2.970| "
- "L2.971[189,195] 342ns 113mb |L2.971| "
- "L2.972[196,201] 342ns 94mb |L2.972| "
- "L2.973[202,204] 342ns 75mb |L2.973| "
- "L2.974[214,220] 342ns 108mb |L2.974| "
- "L2.975[221,226] 342ns 108mb |L2.975| "
- "L2.976[234,240] 342ns 104mb |L2.976| "
- "L2.977[241,246] 342ns 86mb |L2.977| "
- "L2.978[247,248] 342ns 52mb |L2.978| "
- "L2.979[249,255] 342ns 102mb |L2.979| "
- "L2.980[256,260] 342ns 85mb |L2.980| "
- "L2.981[268,273] 342ns 111mb |L2.981| "
- "L2.982[274,278] 342ns 89mb |L2.982| "
- "L2.983[279,281] 342ns 89mb |L2.983| "
- "L2.984[295,299] 342ns 130mb |L2.984| "
- "L2.985[300,303] 342ns 98mb |L2.985| "
- "L2.986[304,304] 342ns 65mb |L2.986| "
- "L2.987[305,308] 342ns 137mb |L2.987| "
- "L2.988[309,310] 342ns 92mb |L2.988|"
- "L2.989[339,339] 342ns 25mb |L2.989|"
- "WARNING: file L2.627[327,329] 342ns 197mb exceeds soft limit 100mb by more than 50%"
- "WARNING: file L2.630[333,335] 342ns 199mb exceeds soft limit 100mb by more than 50%"
"###
);
}