Skip to content

[Python][Parquet] Check write_table options are accepted by dataset writer #51220

Closed

Description

@tadeja

Describe the enhancement requested

Some ParquetWriter options accepted by pq.write_table are not registered in ParquetFileWriteOptions, so pq.write_to_dataset and ds.write_dataset reject them:

pq.write_to_dataset(table, path, bloom_filter_options={'a': True})

Output

  File "_/python/pyarrow/parquet/core.py", line 2279, in write_to_dataset
    write_options = parquet_format.make_write_options(**kwargs)
pyarrow._dataset_parquet.ParquetFileFormat.make_write_options
    (<ParquetFileWriteOptions> opts).update(**kwargs)
  File "pyarrow/_dataset_parquet.pyx", line 628, in pyarrow._dataset_parquet.ParquetFileWriteOptions.update
    raise TypeError("unexpected parquet write option: " + name)
TypeError: unexpected parquet write option: bloom_filter_options

Similar to use_content_defined_chunking getting added in #47499 / #47498

See also implementor's note

A test that every option in inspect.signature(pq.write_table).parameters is accepted by ParquetFileFormat.make_write_options may be considered to prevent this in the future.

Component(s)

Python

Activity

  1. KHARSHAVARDHAN-eng commented on Sep 9, 2026

    @KHARSHAVARDHAN-eng

    Hi @tadeja, I’d be interested in working on this issue. Is it still available for someone to pick up?

  2. changed the title [-][Python] Check `write_table` options are accepted by dataset writer[/-] [+][Python][Parquet] Check `write_table` options are accepted by dataset writer[/+] on Sep 25, 2026
  3. added this to the 26.0.0 milestone on Sep 28, 2026
  4. rok commented on Sep 29, 2026

    @rok
    Member

    Issue resolved by pull request 51461
    #51461

  5. added a commit that references this issue on Sep 29, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions