HADOOP-10346. Deadlock while logging tokens. Contributed by Jason Lowe
git-svn-id: https://svn.apache.org/repos/asf/hadoop/common/trunk@1569382 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
4aa664f677
commit
4fe4268336
|
@ -357,6 +357,8 @@ Release 2.4.0 - UNRELEASED
|
||||||
HADOOP-10249. LdapGroupsMapping should trim ldap password read from file.
|
HADOOP-10249. LdapGroupsMapping should trim ldap password read from file.
|
||||||
(Dilli Armugam via suresh)
|
(Dilli Armugam via suresh)
|
||||||
|
|
||||||
|
HADOOP-10346. Deadlock while logging tokens (jlowe)
|
||||||
|
|
||||||
Release 2.3.1 - UNRELEASED
|
Release 2.3.1 - UNRELEASED
|
||||||
|
|
||||||
INCOMPATIBLE CHANGES
|
INCOMPATIBLE CHANGES
|
||||||
|
|
|
@ -105,18 +105,21 @@ public class Token<T extends TokenIdentifier> implements Writable {
|
||||||
return identifier;
|
return identifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static synchronized Class<? extends TokenIdentifier>
|
private static Class<? extends TokenIdentifier>
|
||||||
getClassForIdentifier(Text kind) {
|
getClassForIdentifier(Text kind) {
|
||||||
if (tokenKindMap == null) {
|
Class<? extends TokenIdentifier> cls = null;
|
||||||
tokenKindMap = Maps.newHashMap();
|
synchronized (Token.class) {
|
||||||
for (TokenIdentifier id : ServiceLoader.load(TokenIdentifier.class)) {
|
if (tokenKindMap == null) {
|
||||||
tokenKindMap.put(id.getKind(), id.getClass());
|
tokenKindMap = Maps.newHashMap();
|
||||||
|
for (TokenIdentifier id : ServiceLoader.load(TokenIdentifier.class)) {
|
||||||
|
tokenKindMap.put(id.getKind(), id.getClass());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
cls = tokenKindMap.get(kind);
|
||||||
}
|
}
|
||||||
Class<? extends TokenIdentifier> cls = tokenKindMap.get(kind);
|
|
||||||
if (cls == null) {
|
if (cls == null) {
|
||||||
LOG.warn("Cannot find class for token kind " + kind);
|
LOG.warn("Cannot find class for token kind " + kind);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
return cls;
|
return cls;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue