Yaniv Kunda created HADOOP-19525:
------------------------------------

             Summary: Use java.time.Clock instead of 
org.apache.hadoop.util.Clock
                 Key: HADOOP-19525
                 URL: https://issues.apache.org/jira/browse/HADOOP-19525
             Project: Hadoop Common
          Issue Type: Sub-task
          Components: hadoop-common, mapreduce, yarn
            Reporter: Yaniv Kunda
            Assignee: Yaniv Kunda


Hadoop's {{Clock}} interface was recently moved from 
{{org.apache.hadoop.yarn.util}} (in hadoop-yarn) to {{org.apache.hadoop.util}} 
(in hadoop-common) as part of YARN-11765.

I propose to seize the opportunity of this being targeted done for 3.5.0 to 
modernize it usage:
# Deprecate {{org.apache.hadoop.util.Clock}}
# Replace all of its usages with {{java.time.Clock}}
# Replace existing usages of its simple implementations, e.g. 
{{SystemClock}}/{{UTCClock}} with standard {{java.time.Clock}} subclasses, e.g. 
{{Clock.systemUTC()}}
# Re-implement other implementations, e.g. 
{{MonotonicClock}}/{{ControllerClock}}, as {{java.time.Clock}} subclasses.

The standard {{java.time.Clock}} has a richer API supports modern {{java.time}} 
classes such as {{Instant}} and {{ZoneId}}, and migration would be 
straightforward:
Just changing {{org.apache.hadoop.util.Clock.getTime()}} to 
{{java.time.Clock.millis()}}






--
This message was sent by Atlassian Jira
(v8.20.10#820010)

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

Reply via email to