apache / parquet-java

Apache Parquet Java
https://parquet.apache.org/
Apache License 2.0
2.65k stars 1.41k forks source link

ParquetMetadataConverter should never log at level WARN #3025

Open wallacms opened 1 month ago

wallacms commented 1 month ago

Describe the bug, including details regarding any error messages, version, and platform.

When ParquetMetadataConverter encounters a mismatch between logical and converted type, it logs a message at level WARN. https://github.com/apache/parquet-java/blob/eed26b4ea96881cc543b4233cdddece5d1d608d7/parquet-hadoop/src/main/java/org/apache/parquet/format/converter/ParquetMetadataConverter.java#L1864

This behavior does not make sense because one of two things must be true:

  1. This is an issue that can affect normal operation and the application needs to (potentially) respond to it
  2. This is not a concern for the calling application and it won't impact normal operation

If item 1 is true, then an exception should be thrown and the application choose to respond or not (possibly by logging). If item item 2 is true, then the log message should either be omitted entirely or be logged at level DEBUG (INFO level would still be too spammy)

I would be happy to submit a patch if there is consensus about which approach to take. Perhaps there should be a flag to control whether the exception should be thrown to avoid breaking existing code.

Component(s)

No response