zabetak opened a new pull request #2282:
URL: https://github.com/apache/hive/pull/2282
### What changes were proposed in this pull request?
1. Add new read/write config properties to control legacy zone conversions
in Parquet.
2. Deprecate hive.parquet.timestamp.legacy.conversion.enabled property since
it is not clear if it applies on conversion during read or write.
3. Exploit file metadata and property to choose between new/old conversion
rules.
4. Update existing tests to remove usages of now deprecated
hive.parquet.timestamp.legacy.conversion.enabled property.
5. Simplify NanoTimeUtils#getTimestamp & NanoTimeUtils#getNanoTime by
removing 'skipConversion' parameter
### Why are the changes needed?
1. Provide the end-users the possibility to write backward compatible
timestamps in Parquet files so that files can be read correctly by older
versions.
2. Improve code readability of NanoTimeUtils APIs.
### Does this PR introduce _any_ user-facing change?
No.
### How was this patch tested?
1. Add timestamp read/write compatibility test with Hive2 Parquet APIs
(`TestParquetTimestampsHive2Compatibility`)
2. Add qtest writing timestamps in Parquet using legacy zone conversions
(`parquet_int96_legacy_compatibility_timestamp.q`)
```
mvn test -Dtest=*Timestamp*
cd itests/qtest
mvn test -Dtest=TestMiniLlapLocalCliDriver -Dqfile_regex=".*timestamp.*"
-Dtest.output.overwrite
```
--
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.
For queries about this service, please contact Infrastructure at:
[email protected]
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]