Yuxuan Wang created HDFS-14088:
----------------------------------
Summary: RequestHedgingProxyProvider can throw
NullPointerException when failvoer due to no lock on currentUsedProxy
Key: HDFS-14088
URL: https://issues.apache.org/jira/browse/HDFS-14088
Project: Hadoop HDFS
Issue Type: Bug
Components: hdfs-client
Reporter: Yuxuan Wang
{code:java}
if (currentUsedProxy != null) {
try {
Object retVal = method.invoke(currentUsedProxy.proxy, args);
LOG.debug("Invocation successful on [{}]",
currentUsedProxy.proxyInfo);
{code}
If a thread run try block and then other thread trigger a fail over calling
method
{code:java}
@Override
public synchronized void performFailover(T currentProxy) {
toIgnore = this.currentUsedProxy.proxyInfo;
this.currentUsedProxy = null;
}
{code}
It will set currentUsedProxy to null, and the first thread can throw a
NullPointerException.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]