Skip to content

Preserve row counts for zero-column tables in IO readers #22935

Description

@madsbk

Follow-up to the zero-column support #22765.

The core PR made zero-column tables (shape (N, 0)) representable and threaded their row counts through table-producing algorithms, interop, and plc.Table. The remaining gap is in the IO readers, which still collapse zero-column reads to (0, 0) and lose the row count.

To do

  • Parquet reader (including chunked and filtered read paths)
  • ORC reader (including chunked read paths)
  • CSV reader
  • AVRO, JSON, and experimental Parquet paths (hybrid scan, deletion vectors) where applicable
  • Unskip the placeholder reader tests (ParquetReaderTest, OrcReaderTest, and CsvReaderTest.ZeroColumnsPreservesRowCount)
  • Remove the cudf-polars workarounds: DataFrame._num_rows_override, the DataFrameScan zero-width path, Scan._get_parquet_row_count_from_metadata, and the related xfails in inject_gpu_engine.py

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    cudf-polarsIssues specific to cudf-polarsfeature requestNew feature or request

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions