MaxGekk opened a new pull request #29523:
URL: https://github.com/apache/spark/pull/29523


   ### What changes were proposed in this pull request?
   Override `def get: Date` in `DaysWritable` use the `daysToMillis(int d)` 
from the parent class `DateWritable` instead of `long daysToMillis(int d, 
boolean doesTimeMatter)`.
   
   
   ### Why are the changes needed?
   It fixes failures of `HiveSerDeReadWriteSuite` with the profile `hive-1.2`. 
In that case, the parent class `DateWritable` has different implementation 
before the commit to Hive 
https://github.com/apache/hive/commit/da3ed68eda10533f3c50aae19731ac6d059cda87. 
In particular, `get()` calls `new Date(daysToMillis(daysSinceEpoch))` instead 
of overrided `def get(doesTimeMatter: Boolean): Date` in the child class. The 
`get()` method returns wrong result `1970-01-01` because it uses not updated 
`daysSinceEpoch`.
   
   ### Does this PR introduce _any_ user-facing change?
   Yes.
   
   ### How was this patch tested?
   By running the test suite `HiveSerDeReadWriteSuite`:
   ```
   $ build/sbt -Phive-1.2 -Phadoop-2.7 "test:testOnly 
org.apache.spark.sql.hive.execution.HiveSerDeReadWriteSuite"
   ```
   and 
   ```
   $ build/sbt -Phive-2.3 -Phadoop-2.7 "test:testOnly 
org.apache.spark.sql.hive.execution.HiveSerDeReadWriteSuite"
   ```


----------------------------------------------------------------
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]

Reply via email to