diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt index 794bdcfef6e..116f0bec96e 100644 --- a/hadoop-common-project/hadoop-common/CHANGES.txt +++ b/hadoop-common-project/hadoop-common/CHANGES.txt @@ -182,6 +182,8 @@ Release 2.4.1 - UNRELEASED HADOOP-10527. Fix incorrect return code and allow more retries on EINTR. (kihwal) + HADOOP-10612. NFS failed to refresh the user group id mapping table (brandonli) + Release 2.4.0 - 2014-04-07 INCOMPATIBLE CHANGES diff --git a/hadoop-common-project/hadoop-nfs/src/main/java/org/apache/hadoop/nfs/nfs3/IdUserGroup.java b/hadoop-common-project/hadoop-nfs/src/main/java/org/apache/hadoop/nfs/nfs3/IdUserGroup.java index 1abea8efa59..1ed3d3f8bde 100644 --- a/hadoop-common-project/hadoop-nfs/src/main/java/org/apache/hadoop/nfs/nfs3/IdUserGroup.java +++ b/hadoop-common-project/hadoop-nfs/src/main/java/org/apache/hadoop/nfs/nfs3/IdUserGroup.java @@ -24,6 +24,7 @@ import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.apache.hadoop.conf.Configuration; +import org.apache.hadoop.util.Time; import com.google.common.annotations.VisibleForTesting; import com.google.common.collect.BiMap; @@ -79,7 +80,7 @@ public long getTimeout() { } synchronized private boolean isExpired() { - return lastUpdateTime - System.currentTimeMillis() > timeout; + return Time.monotonicNow() - lastUpdateTime > timeout; } // If can't update the maps, will keep using the old ones @@ -210,7 +211,7 @@ synchronized public void updateMaps() throws IOException { uidNameMap = uMap; gidNameMap = gMap; - lastUpdateTime = System.currentTimeMillis(); + lastUpdateTime = Time.monotonicNow(); } synchronized public int getUid(String user) throws IOException {