[ https://issues.apache.org/jira/browse/YARN-11765?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17927299#comment-17927299 ]
ASF GitHub Bot commented on YARN-11765: --------------------------------------- yangjiandan commented on code in PR #7352: URL: https://github.com/apache/hadoop/pull/7352#discussion_r1956825436 ########## hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/util/SystemClock.java: ########## @@ -0,0 +1,49 @@ +/** +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, software +* distributed under the License is distributed on an "AS IS" BASIS, +* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +* See the License for the specific language governing permissions and +* limitations under the License. +*/ +package org.apache.hadoop.util; + +import org.apache.hadoop.classification.InterfaceAudience.Public; +import org.apache.hadoop.classification.InterfaceStability.Stable; + +/** + * Implementation of {@link Clock} that gives the current time from the system + * clock in milliseconds. + * + * NOTE: Do not use this to calculate a duration of expire or interval to sleep, + * because it will be broken by settimeofday. Please use {@link MonotonicClock} + * instead. + */ +@Public +@Stable +public final class SystemClock implements Clock { + + private static final SystemClock INSTANCE = new SystemClock(); + + public static SystemClock getInstance() { + return INSTANCE; + } + + @Deprecated Review Comment: @cnauroth Thanks for your feedback! I understand your point that this is a new API. I will update patch accordingly based on your suggestion. > Refactor: Move Clock Class from hadoop-mapreduce-project to > hadoop-common-project for Reusability > ------------------------------------------------------------------------------------------------- > > Key: YARN-11765 > URL: https://issues.apache.org/jira/browse/YARN-11765 > Project: Hadoop YARN > Issue Type: Improvement > Components: yarn, yarn-common > Reporter: Jiandan Yang > Assignee: Jiandan Yang > Priority: Major > Labels: pull-request-available > > *Background:* > > Currently, both hadoop-mapreduce-project and hadoop-yarn-project define their > own versions of the Clock class. This leads to redundant class definitions > across different Hadoop subprojects, reducing maintainability and code > reusability. > > To {*}avoid duplicate definitions and improve class reuse{*}, we propose > *moving the* Clock *class from* hadoop-mapreduce-project *to* > hadoop-common-project, making it available as a shared utility for all Hadoop > components. > > *Proposal:* > 1.{*}Move the{*} Clock *interface and its implementions from* > hadoop-mapreduce-project *to* hadoop-common-project, ensuring it becomes a > shared utility accessible to all subprojects. > 2. *Update all references* in hadoop-mapreduce-project and > hadoop-yarn-project to use the newly relocated Clock class in > hadoop-common-project. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org