[ 
https://issues.apache.org/jira/browse/HDFS-11296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15803903#comment-15803903
 ] 

Lei (Eddy) Xu commented on HDFS-11296:
--------------------------------------

Hi, [~manojg]

Thanks for working on this. I have a few questions regarding to this patch.

There were a few efforts to replace wall time with {{monotonicNow()}} in the 
past, for example, HDFS-6841 and HDFS-6453.  In general, different nodes can 
not guarantee time are synchronized, i.e., between clients, NameNode and 
DataNodes. 

Btw, IIUC, the expiration time set by client is the delta time instead of 
absolute time?

> Maintenance state expiry should be an epoch time and not jvm monotonic
> ----------------------------------------------------------------------
>
>                 Key: HDFS-11296
>                 URL: https://issues.apache.org/jira/browse/HDFS-11296
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>    Affects Versions: 3.0.0-alpha1
>            Reporter: Manoj Govindassamy
>            Assignee: Manoj Govindassamy
>         Attachments: HDFS-11296.01.patch
>
>
> Currently it is possible to configure an expiry time in milliseconds for a 
> DataNode in maintenance state. As per the design, the expiry attribute is an 
> absolute time, beyond which NameNode starts to stop the ongoing maintenance 
> operation for that DataNode. Internally in the code, this expiry time is read 
> and checked against {{Time.monotonicNow()}} making the expiry based on more 
> of JVM's runtime, which is very difficult to configure for any external user. 
> The goal is to make the expiry time an absolute epoch time, so that its easy 
> to configure for external users.
> {noformat}
> {
>     "hostName": <host>,
>     "port": <port>,
>     "adminState": "IN_MAINTENANCE",
>     "maintenanceExpireTimeInMS": <time in millis>
> }
> {noformat}
> DatanodeInfo.java
> {noformat}
>   public static boolean maintenanceNotExpired(long maintenanceExpireTimeInMS) 
> {
>     return Time.monotonicNow() < maintenanceExpireTimeInMS;
>   }
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: hdfs-issues-unsubscr...@hadoop.apache.org
For additional commands, e-mail: hdfs-issues-h...@hadoop.apache.org

Reply via email to