This PR introduces nanosecond precision time and timestamp types to parquet-mr. It depends on https://github.com/apache/parquet-format/pull/102, should be committed once this format change is released.
Nanosecond precision is introduced only into the new logical type API, the old version (ConvertedType in format and OriginalType in mr) doesn't have a corresponding enum value for nanoseconds. Therefore in the Thrift schema these fields will be null, only new releases can interpret nanosecond precision, older readers can only see the physical type. In addition to nanosecond precision, I also refactored the modules to use the new logical type API for internal decisions (e.g.: replaced the OriginalType-based switch cases, for example in type builder when checking if the proper annotation is present on physical type). This part ( commit with title: Refactor modules to use the new logical type API) doesn't need new format release, and can be split out from this PR if needed. [ Full content available at: https://github.com/apache/parquet-mr/pull/519 ] This message was relayed via gitbox.apache.org for [email protected]
