fn overlapped_groups(
        parquet_files: Vec<ParquetFileWithMetadata>,
    ) -> Vec<GroupWithMinTimeAndSize> {
        // group overlap files
        let overlapped_groups =
            group_potential_duplicates(parquet_files).expect("Error grouping overlapped chunks");

        // Compute min time and total size for each overlapped group
        let mut groups_with_min_time_and_size = Vec::with_capacity(overlapped_groups.len());
        for group in overlapped_groups {
            let mut group_with_min_time_and_size = GroupWithMinTimeAndSize {
                parquet_files: Vec::with_capacity(group.len()),
                min_time: Timestamp::new(i64::MAX),
                total_file_size_bytes: 0,
            };

            for file in group {
                group_with_min_time_and_size.min_time =
                    group_with_min_time_and_size.min_time.min(file.min_time);
                group_with_min_time_and_size.total_file_size_bytes += file.file_size_bytes;
                group_with_min_time_and_size.parquet_files.push(file);
            }

            groups_with_min_time_and_size.push(group_with_min_time_and_size);
        }

        groups_with_min_time_and_size
    }
// Given a list of parquet files that come from the same Table Partition, group files together
// if their (min_time, max_time) ranges overlap. Does not preserve or guarantee any ordering.
Given a list of parquet files that come from the same Table Partition, group files together
if their (min_time, max_time) ranges overlap. Does not preserve or guarantee any ordering.
Given a list of parquet files that come from the same Table Partition group files together if their ( min_time max_time ) ranges overlap . Does not preserve or guarantee any ordering .
fn overlapped_groups(
        parquet_files: Vec<ParquetFileWithMetadata>,
    ) -> Vec<GroupWithMinTimeAndSize> {
        // group overlap files
        let overlapped_groups =
            group_potential_duplicates(parquet_files).expect("Error grouping overlapped chunks");
        // Compute min time and total size for each overlapped group
        let mut groups_with_min_time_and_size = Vec::with_capacity(overlapped_groups.len());
        for group in overlapped_groups {
            let mut group_with_min_time_and_size = GroupWithMinTimeAndSize {
                parquet_files: Vec::with_capacity(group.len()),
                min_time: Timestamp::new(i64::MAX),
                total_file_size_bytes: 0,
            };
            for file in group {
                group_with_min_time_and_size.min_time =
                    group_with_min_time_and_size.min_time.min(file.min_time);
                group_with_min_time_and_size.total_file_size_bytes += file.file_size_bytes;
                group_with_min_time_and_size.parquet_files.push(file);
            }
            groups_with_min_time_and_size.push(group_with_min_time_and_size);
        }
        groups_with_min_time_and_size
    }
fn overlapped_groups ( parquet_files : Vec < ParquetFileWithMetadata > , ) -> Vec < GroupWithMinTimeAndSize > { // group overlap files let overlapped_groups = group_potential_duplicates ( parquet_files ) . expect ( " " ) ; // Compute min time and total size for each overlapped group let mut groups_with_min_time_and_size = Vec :: with_capacity ( overlapped_groups . len ( ) ) ; for group in overlapped_groups { let mut group_with_min_time_and_size = GroupWithMinTimeAndSize { parquet_files : Vec :: with_capacity ( group . len ( ) ) , min_time : Timestamp :: new ( i64 :: MAX ) , total_file_size_bytes : 0 , } ; for file in group { group_with_min_time_and_size . min_time = group_with_min_time_and_size . min_time . min ( file . min_time ) ; group_with_min_time_and_size . total_file_size_bytes += file . file_size_bytes ; group_with_min_time_and_size . parquet_files . push ( file ) ; } groups_with_min_time_and_size . push ( group_with_min_time_and_size ) ; } groups_with_min_time_and_size }
Given a list of parquet files that come from the same Table Partition, group files together
if their (min_time, max_time) ranges overlap.
Given a list of parquet files that come from the same Table Partition group files together if their ( min_time max_time ) ranges overlap .
parquet_files
Vec<ParquetFileWithMetadata>
parquet_files
Vec<ParquetFileWithMetadata>