Author: cnauroth Date: Tue Jan 14 18:20:18 2014 New Revision: 1558139 URL: http://svn.apache.org/r1558139 Log: HADOOP-10228. FsPermission#fromShort() should cache FsAction.values(). Contributed by Haohui Mai.
Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt?rev=1558139&r1=1558138&r2=1558139&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt (original) +++ hadoop/common/trunk/hadoop-common-project/hadoop-common/CHANGES.txt Tue Jan 14 18:20:18 2014 @@ -430,6 +430,9 @@ Release 2.4.0 - UNRELEASED HADOOP-10173. Remove UGI from DIGEST-MD5 SASL server creation (daryn via kihwal) + HADOOP-10228. FsPermission#fromShort() should cache FsAction.values(). + (Haohui Mai via cnauroth) + BUG FIXES HADOOP-9964. Fix deadlocks in TestHttpServer by synchronize Modified: hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java URL: http://svn.apache.org/viewvc/hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java?rev=1558139&r1=1558138&r2=1558139&view=diff ============================================================================== --- hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java (original) +++ hadoop/common/trunk/hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/fs/permission/FsPermission.java Tue Jan 14 18:20:18 2014 @@ -120,8 +120,7 @@ public class FsPermission implements Wri } public void fromShort(short n) { - FsAction[] v = FsAction.values(); - + FsAction[] v = FSACTION_VALUES; set(v[(n >>> 6) & 7], v[(n >>> 3) & 7], v[n & 7], (((n >>> 9) & 1) == 1) ); } @@ -210,6 +209,8 @@ public class FsPermission implements Wri public static final int DEFAULT_UMASK = CommonConfigurationKeys.FS_PERMISSIONS_UMASK_DEFAULT; + private static final FsAction[] FSACTION_VALUES = FsAction.values(); + /** * Get the user file creation mask (umask) *