[X] I have checked that this issue has not already been reported.
[X] I have confirmed this bug exists on the latest version of Polars.
Reproducible example
import polars as pl
from hypothesis import given, settings
from polars.testing.parametric import dataframes
# this test fails
@given(df=dataframes(min_size=5))
@settings(max_examples=100, deadline=None)
def test_polars_parquet_write_read_with_structs(
df: pl.DataFrame, tmp_path_factory
):
path = tmp_path_factory.mktemp("test1") / "df.parquet"
df.write_parquet(path)
pl.read_parquet(path) # this works
ldf = pl.scan_parquet(path)
ldf.collect() # this fails!
# this test passes because it's not running over `pl.Struct` types
@given(df=dataframes(excluded_dtypes=[pl.Struct], min_size=5))
@settings(max_examples=100, deadline=None)
def test_polars_parquet_write_read_without_structs(
df: pl.DataFrame, tmp_path_factory
):
path = tmp_path_factory.mktemp("test2") / "df.parquet"
df.write_parquet(path)
pl.read_parquet(path) # this works
ldf = pl.scan_parquet(path)
ldf.collect() # this passes!
Log output
> return wrap_df(ldf.collect(callback))
E pyo3_runtime.PanicException: called `Result::unwrap()` on an `Err` value: ComputeError(ErrString("validity mask length must match the number of values"))
Issue description
Might be related:
17931
17932
Expected behavior
Writing and reading a Parquet file should always work
Checks
Reproducible example
Log output
Issue description
Might be related:
17931
17932
Expected behavior
Writing and reading a Parquet file should always work
Installed versions