pola-rs/polars · error

thrift bool field

Error message

thrift bool field

What it means

Error "thrift bool field" thrown in pola-rs/polars.

Source

Thrown at crates/polars-parquet/src/parquet/handwritten_thrift/file_metadata_thrift.rs:350

    // footer; skip the bytes themselves.
    read_struct_fields!(prot, |f| {
        1 => prot.skip_binary()?,
        2 => prot.skip_binary()?,
        3 => null_count = Some(prot.read_i64()?),
        4 => distinct_count = Some(prot.read_i64()?),
        5 => {
            let len = prot.read_vlq()? as u32;
            let offset = prot.offset_from(origin_ptr);
            prot.skip_bytes(len as usize)?;
            max_value = Some(ByteRange { offset, len });
        },
        6 => {
            let len = prot.read_vlq()? as u32;
            let offset = prot.offset_from(origin_ptr);
            prot.skip_bytes(len as usize)?;
            min_value = Some(ByteRange { offset, len });
        },
        7 => is_max_value_exact = Some(f.bool_val.expect("thrift bool field")),
        8 => is_min_value_exact = Some(f.bool_val.expect("thrift bool field")),
    });

    Ok(CompactStatistics {
        null_count,
        distinct_count,
        max_value,
        min_value,
        is_max_value_exact,
        is_min_value_exact,
    })
}

/// Decode a `KeyValue` (kept as format-crate type, polars exposes it directly).
fn read_key_value(prot: &mut ThriftSliceInputProtocol<'_>) -> ParquetResult<KeyValue> {
    let mut key: Option<String> = None;
    let mut value: Option<String> = None;

View on GitHub (pinned to df599052da)

When it happens

Trigger: Thrown at crates/polars-parquet/src/parquet/handwritten_thrift/file_metadata_thrift.rs:350 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of pola-rs/polars@df599052da (2026-08-16). Data as JSON: /api/errors/93e52a44ec3286ed. Report an issue: GitHub.