Skip to content

[SQL] Add ParquetFormatVersion enum and writer version option#55273

Open
divjotarora wants to merge 1 commit intoapache:masterfrom
divjotarora:parquet-format-version
Open

[SQL] Add ParquetFormatVersion enum and writer version option#55273
divjotarora wants to merge 1 commit intoapache:masterfrom
divjotarora:parquet-format-version

Conversation

@divjotarora
Copy link
Copy Markdown

@divjotarora divjotarora commented Apr 9, 2026

What changes were proposed in this pull request?

This PR adds parquet.writer.version and spark.sql.parquet.outputTimestampType to ParquetOptions and allows them to be plumbed down to Parquet writes via this mechanism. Note that parquet.writer.version is named differently than other configs (no spark prefix) because it is defined in the parquet-java dependency and passed down directly via Spark. These configs are already settable via SQL confs (see existing test case) and are just dropped when passed via writer options (df.option("foo", "bar").save()), so this PR is just fixing that.

Why are the changes needed?

These changes are required to open source the functionality to configure the Parquet format version for writes to Delta and Iceberg tables.

Does this PR introduce any user-facing change?

No

How was this patch tested?

Integration tests to validate that these configurations can be pushed down via writer options.

Was this patch authored or co-authored using generative AI tooling?

Generated-by: Claude Code (claude-opus-4-6)

@divjotarora divjotarora force-pushed the parquet-format-version branch from d719adc to 36c498c Compare April 9, 2026 07:15
… option plumbing

Add WRITER_VERSION and OUTPUT_TIMESTAMP_TYPE options to ParquetOptions so
callers (e.g., Delta Lake) can control the Parquet writer version and
timestamp encoding through the write options map. Wire both through
ParquetUtils.prepareWrite() to the Hadoop Configuration.

Co-authored-by: Isaac
@divjotarora divjotarora force-pushed the parquet-format-version branch from 36c498c to d55d399 Compare April 9, 2026 11:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant