edubraqd opened a new pull request, #24905:
URL: https://github.com/apache/datafusion/pull/24905

   ## Which issue does this PR close?
   
   - Closes #24904.
   
   ## Rationale for this change
   
   `ParquetOptions::into_writer_properties_builder` handed every value straight 
to `WriterPropertiesBuilder`, whose setters `assert!` on values they cannot 
accept. `SET datafusion.execution.parquet.max_row_group_size = 0` or 
`bloom_filter_fpp = 1.5` made the next `COPY ... TO 'x.parquet'` panic, and 
`write_batch_size = 0` made the writer loop forever.
   
   ## What changes are included in this PR?
   
   Check the values the `parquet` crate asserts on before building the 
properties and return a `DataFusionError::Configuration` naming the option: 
`write_batch_size`, `max_row_group_size`, `column_index_truncate_length`, 
`statistics_truncate_length`, `bloom_filter_fpp` (global and per column) and 
the content-defined chunking sizes. This matches how an unknown `compression` 
or `encoding` string is already reported in the same function.
   
   ## Are these changes tested?
   
   Yes. `test_invalid_writer_options_are_rejected` covers each rejected value 
(including `NaN` and the per-column bloom filter fpp) and checks that the 
defaults and an in-range fpp still build.
   
   ## Are there any user-facing changes?
   
   Invalid parquet writer options now fail with a configuration error at write 
time instead of a panic or a hang.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to