HADOOP-10590. ServiceAuthorizationManager is not threadsafe. (Contributed by Benoy Antony)
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1603356 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
8e8a769e7f
commit
44ac7437ad
|
@ -589,6 +589,8 @@ Release 2.5.0 - UNRELEASED
|
|||
HADOOP-10561. Copy command with preserve option should handle Xattrs.
|
||||
(Yi Liu via cnauroth)
|
||||
|
||||
HADOOP-10590. ServiceAuthorizationManager is not threadsafe. (Benoy Antony via vinayakumarb)
|
||||
|
||||
Release 2.4.1 - 2014-06-23
|
||||
|
||||
INCOMPATIBLE CHANGES
|
||||
|
|
|
@ -45,7 +45,7 @@ import com.google.common.annotations.VisibleForTesting;
|
|||
public class ServiceAuthorizationManager {
|
||||
private static final String HADOOP_POLICY_FILE = "hadoop-policy.xml";
|
||||
|
||||
private Map<Class<?>, AccessControlList> protocolToAcl =
|
||||
private volatile Map<Class<?>, AccessControlList> protocolToAcl =
|
||||
new IdentityHashMap<Class<?>, AccessControlList>();
|
||||
|
||||
/**
|
||||
|
@ -114,7 +114,7 @@ public class ServiceAuthorizationManager {
|
|||
AUDITLOG.info(AUTHZ_SUCCESSFUL_FOR + user + " for protocol="+protocol);
|
||||
}
|
||||
|
||||
public synchronized void refresh(Configuration conf,
|
||||
public void refresh(Configuration conf,
|
||||
PolicyProvider provider) {
|
||||
// Get the system property 'hadoop.policy.file'
|
||||
String policyFile =
|
||||
|
@ -127,7 +127,7 @@ public class ServiceAuthorizationManager {
|
|||
}
|
||||
|
||||
@Private
|
||||
public synchronized void refreshWithLoadedConfiguration(Configuration conf,
|
||||
public void refreshWithLoadedConfiguration(Configuration conf,
|
||||
PolicyProvider provider) {
|
||||
final Map<Class<?>, AccessControlList> newAcls =
|
||||
new IdentityHashMap<Class<?>, AccessControlList>();
|
||||
|
|
Loading…
Reference in New Issue