You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Joan Sala Reixach (JIRA)" <ji...@apache.org> on 2019/07/31 16:29:00 UTC
[jira] [Created] (HADOOP-16479) FileStatus.getModificationTime
returns localized time instead of UTC
Joan Sala Reixach created HADOOP-16479:
------------------------------------------
Summary: FileStatus.getModificationTime returns localized time instead of UTC
Key: HADOOP-16479
URL: https://issues.apache.org/jira/browse/HADOOP-16479
Project: Hadoop Common
Issue Type: Bug
Components: fs/azure
Affects Versions: 3.2.0
Reporter: Joan Sala Reixach
Attachments: image-2019-07-31-18-21-53-023.png, image-2019-07-31-18-23-37-349.png
As per javadoc, the method FileStatus.getModificationTime() should return the time in UTC, but it returns the time in the JVM timezone.
The issue origins in AzureBlobFileSystemStore.getFileStatus() itself, sinceĀ parseLastModifiedTime() returns a wrong date. I have created a file in Azure Data Lake Gen2 and when I look atĀ it through the Azure Explorer it shows the correct modification time, but the method returns -2 hours time (I am in CET = UTC+2).
Azure Explorer last modified time:
!image-2019-07-31-18-21-53-023.png|width=460,height=45!
AbfsClient parseLastModifiedTime:
!image-2019-07-31-18-23-37-349.png|width=459,height=284!
It shows 15:21 CEST as utcDate, when it should be 15:21 UTC, which results in the 2 hour loss.
DateFormat.parse uses a localized calendar to parse dates which might be the source of the issue.
--
This message was sent by Atlassian JIRA
(v7.6.14#76016)
---------------------------------------------------------------------
To unsubscribe, e-mail: common-dev-unsubscribe@hadoop.apache.org
For additional commands, e-mail: common-dev-help@hadoop.apache.org